Doi Maach (Fish with yogurt)

Doi Maach is a very popular and unique Bengali dish with very little spices. “Doi” means yogurt or curd and “maach” means fish. Rohu is the everyday fish in Bengal and its very appropriate for to get the authentic flever, which is the life of this dish. However if it seems hard to get rohu then this dish can also be done with other fishes like Red Snapper, Halibut, Cod, Haddock, Swordfish.



Prep Time 10-15 minutes

Cook Time 25-30 minutes

Serve 4

Taste Mild



  • Rohu/ Rui 600 grams( cut into 1 inch thick pieces)
  • Onion 2 medium size
  • Ginger 3 teaspoons (minced)
  • Green chillies 3 (slitted)
  • Red chilli powder 2 teaspoons
  • Cardamons 4
  • Cloves 4
  • Bay leaves 2-3
  • Cinnamon 1″ piece
  • Turmeric powder 3-4 teaspoons
  • Salt to taste
  • Mustard oil 5 tablespoon
  • Sugar 3 teaspoons
  • Yogurt 4-5 tablespoons
  • Water 4-5 tablespoons
  • Golden raisins 2 teaspoons (optional)
  • Water 3 cups
  • Fresh Coriander leaves


Marinate the fish

Wash the fish properly and add 2 teaspoon of turmeric and 2 teaspoons of salt with it and leave to marinate for 10 minutes

Make onion paste and crush the cardamom and cloves

Meanwhile, make a paste of the onions and pound the cardamom and the cloves in a mortal and pestle and keep them aside.

Fry the fish

In a pan, heat the oil and lightly fry the fish on both sides, then pull it aside on a paper towel till ready to use.

Cook the fish using all the ingredients

In the same remaining oil add bay leaves, ground cloves and cardamom, onion paste, green chillies, salt and cook it for 2-3 minutes. Now add ginger,  1 teaspoon turmeric powder, red chilli powder, sugar and give a proper mix. Now in a bowl take the yogurt along with the same quantity of water to give a smooth texture. Then turn the flame off and slowly add the mixture of yogurt and water to the pan, while stirring continuously. Once mixed in , turn the flame back on and add in the raisins. Cook it till the oil separates from the mixture. Once done, add the fish gently. Cook on both sides for a couple of minutes. Now add 3 cups of warm water and mix very gently to mix the masala to the water. After mixing, lower the flame, cover it and cook for 10 minutes. After 10 minutes, uncover, increase the heat to a high and cook for another 5-7 minutes until the gravy becomes thick.

Best serve with rice or chapati

Garnish it with freshly chopped coriander leaves and serve hot with rice or chapati.