Doi Maach is Bengali Biye bari style old fish curry recipe where rui or Katla fish pieces are cooked in a gravy made of yogurt (curd) & a few simple spices. Though using yogurt, this fish curry is not sour in taste but rather slightly spicy having a thick and creamy gravy. For making this Bengali fish curry, only rui (rohu) or katla (catla) fish is used. Thick fish slices are mainly used to make this curry. First, fry the fish and then cook in onion garlic, chilli, and yogurt-based gravy and have it with rice.
In Hindi, this Bengali style yogurt fish curry recipe is called Dahi Maachchli or Dahi Machchi and called dahi machha in Odia cuisine. This delectable yogurt fish curry was especially created in Bengali Biye bari since then this dish loved by Bengalis. Prepared at every Bengali home (from West Bengal or in Bangladesh). Steamed rice and doi maach is a perfect Bengali meal, however, Bengali fried rice or Basanti pulao also tastes Awesome!

About Doi maach recipe
Doi maach is a Bengali term, in Bengali, “Doi” means plain yogurt (known as dahi/curd in India), and “Maach” is fish (need rui / katla fish slices). Doi maach is all about a story of Bengali fish curry recipe cooked fried rui or katla fish steaks(after marinated with salt and turmeric powder) simmered in a yogurt based gravy flavored with onion, ginger, garlic, garam masala, and a few simple spices available in every Indian kitchen. Yogurt (tok doi in Bengali) is used to make a creamy and oily gravy of this fish curry.
For making Bengali doi maach recipe, best to choose big round cut pieces of rui fish or katla fish. Marinate the fish with turmeric and salt. Then fry well in mustard oil. Then gently simmer the fish in a creamy flavorsome Bengali sauce made of a smooth blend of onion, ginger, garlic, tomato, garam masala & yogurt. Cook until the fish is soft & infused with the spices. This dish does not taste sour, due to maintaining a balance of yogurt and spices.
From novice to bachelor anyone can prepare this yogurt fish curry at home with ease. All ingredients are in your food pantry no need for any fancy items. Even to make this dish easier and faster, I prepare this fish curry masala at one time blending along with yogurt. So no need for extra whisking for yogurt. Only need to know how long need to roast the masala to bring an exotic taste & texture to this fish gravy.
Hope you like this Bengali Biyebari style doi maach recipe, and my step-by-step detailed recipe must help you to make this yogurt fish curry at home at its best.
Have a look at other Common & exotic Bengali rui katla macher recipes
Biyebari Style Macher Kalia
Jeere Bata Diye Patla Maacher jhol
Alu Phulkopi Diye Macher jhol
Check my other popular Bengali fish curry dishes
Shorshe Pabda recipe
Pomfret Maacher jhal
Bhetki Macher Paturi
Recipe card for Doi Maach recipe (Bengali style Katla or Rui fish curry with yogurt)
Bengali Biyebari Style Doi Maach (Doi Katla) recipe
Course: Lunch, DinnerCuisine: Bengali, IndianDifficulty: Easy7
servings10
minutes25
minutes300
kcal35
minutesDoi Maach is a popular Bengali fish curried dish with rui or katla fish steaks cooked in a yogurt gravy blended with a few simple spices. Popular dish of fish in Bengali biye bari (Marriage feast) menu for ages. Flavored with garam masala and regular kitchen spices. Best to serve with steamed rice, Bengali fried rice, or Basanti Pulao.
Ingredients of Doi maach (Doi katla)
500 g Katla Maach /Rui Maach (thick fish slices )
6 tbsp Curd/ Yogurt/ Dahi / Tok DOI
2 Medium Onions (paste)
1 Medium Tomato
8 Garlic Cloves
1/2 inch Ginger
3 Green Chillies
3/4 teaspoon Cumin Powder
1/4 teaspoon Coriander Powder
1+1/2 teaspoon Kashmiri Red Chilli Powder
1/2 teaspoon Spicy Chilli Powder
1/2 teaspoon Turmeric Powder
1/2 inch Cinnamon Stick
3 Cardamom Pods
4 Cloves
2 teaspoon Sugar (as per taste)
1/2 tsp Garam Masala Powder (Homemade / Store bought)
8-10 tablespoon Mustard Oil
1 tsp Salt (As per taste)
How to Make Doi maach (Doi katla) recipe
- Preparation
- For making this recipe, first clean and thoroughly wash the fish pieces, pat the pieces dry, and marinate the fish pieces with 1/2 tsp turmeric powder and 1/2 tsp salt.
- To prepare this fish curry masala, first blend 2 skin-out onions (cut into cubes).
- Then blend 1/2 inch ginger, 7-8 garlic cloves, 3 green chillies, 1 tomato, and 1/2 inch cinnamon stick, 3 cardamom pods & 4 cloves) with the onion paste.
- After a smooth blending, add 3/4 teaspoon cumin powder, 1/4 teaspoon coriander powder, 1/2 tsp turmeric powder, 1+1/2 tsp Kashmiri red chilli powder, 1/2 tsp regular spicy chilli powder, and 8-10 pcs whole black peppercorn (optional) to the blender. Blend it well.
- Lastly, add the yogurt (6 tbsp) to the blender and blend it well until getting a creamy sauce-like masala puree.
- Cooking Doi maach
- Heat the pan, and add 8-10 tbsp mustard oil. Once the oil releases smoke, gently leave the fish steaks in hot oil one by one.
- Do not overcrowd the pan, keep a minimum space between the fish steaks.
- Fry the fish until both sides get a golden texture. Remove the fish from the pan & keep it aside.
- Add masala puree in the same pan, and add moshla dhoa’r jol (1/2 cup of water mixed with the leftover masala in the blender) too. Stir it well.
- Once the masala starts boiling and the water little dries up, then add sugar (I used 2 tsp sugar) to the mixture to balance the sourness of the yogurt.
- Let the gravy almost dry off the water and release oil from all of its sides, then add 2 cups (500 ml)of water. In the meantime, add 1/2 tsp of salt and bring the gravy to a boil.
- Once the gravy starts boiling, add the fried fish steaks into the gravy and nicely coat them with gravy.
- Let the fish cook in the gravy and cover the pan with a tight lid to infuse the aroma of the spices into the fish steaks.
- After 5-6 mins of cooking, gently turn the pieces of fish to get the gravy infused by the other side. Again cover the pan for 5-6 more mins.
- After the last 5-6 mins of cooking, uncover the pan and check whether the fish is soft from both sides. Check the salt & sugar are perfect according to your taste. Add little salt & sugar if required. Stir it well.
- Add 1/2 tsp garam masala powder, give it (the gravy) a good stir, and turn off the heat.
- Immediately cover the pan to infuse the garam masala aroma into the gravy.
- Bengali Biyebari style delicious doi maach is ready. Serve this fish curry with piping hot white rice, Bengali fried rice, or Basanti Pulao.
Notes
- If you are using a small blending jar, then take the onion paste & then paste other ingredients. Otherwise, there is a high chance to masala gets overflow while blending.
- How to know oil is perfectly hot instead of releasing smoke, When bubbles over the oil disappear also indicates oil is perfectly hot for frying fish.
- Fish never stick to the pan while frying Whether in an iron Kadai or steel-made pan if the first pan is perfectly heating up then oil.
- Novice (Beginners) or Bachelor try to use a nonstick pan if worried to fry the fish without sticking.
- Roast the Masala until oil floats over the masala gravy.
- Don’t fry the fish immediately take it out of the fridge, and keep it at room temperature first.
- After washing the fish Novice (Beginners) or Bachelor must pat it dry to avoid existing water with the fish & have a high chance of spluttering hot oil.
How to make Bengali Biye bari Style Doi Maach (Doi Katla) with step by step pictures
Preparation
- To make the recipe, first, clean and thoroughly wash the fish pieces.
- Then pat the pieces till dry, then marinate the fish pieces with turmeric powder and salt.

- To prepare this fish curry masala, first blend 2 skin-out onions (cut into cubes).

- Then blend 1/2 inch ginger, 7-8 garlic cloves, 3 green chillies, 1 tomato, and 1/2 inch cinnamon stick, 3 cardamom pods & 4 cloves with the onion paste.

- After a smooth blending, add 3/4 teaspoon cumin powder, 1/4 teaspoon coriander powder, 1/2 tsp turmeric powder, 1+1/2 tsp Kashmiri red chilli powder, 1/2 tsp regular spicy chilli powder, and 8-10 pcs whole black peppercorn (optional) to the blender. Blend it well.

- Lastly, add the yogurt (homemade or store bought) to the blender and blend it well until getting a smooth creamy puree.

For Frying fish
- Then, heat the pan on medium to high heat, once release smoke adds 8-10 tablespoon mustard oil.
- Once the oil is released smoke, then gently leave the fish steaks in hot oil one by one.

- Do not overcrowd the pan, keep a minimum space between the fish steaks.
- Fry the fish steaks until both sides get a golden texture. Remove the fish from the pan & keep it aside.

Making Doi Maach
- Then, add the masala puree to the same pan. Then add moshla dhoa’r jol (1/2 cup of water mixed with the leftover masala in the blender) too. Stir it well.

- Once the masala puree starts boiling and the water little dries up, then add sugar (I used 2 tsp sugar) to the mixture to balance the sourness of the yogurt.

- Let the gravy almost dry off the water and release oil from all of its sides, then add 2 cups (500 ml) of water. In the meantime, add 1/2 tsp salt and bring the gravy to a boil.

- Once the gravy starts boiling, add the fried fish steaks into the gravy and coat it well with the gravy.

- Let the fish cook in the gravy and cover the pan with a tight lid to infuse the aroma of the spices into the fish steaks.

- After 5-6 mins of cooking, turn the fish steaks to get the gravy infused by the other side of the fish. Again cover the pan for 5-6 more mins.
- After the last 5-6 mins of cooking, uncover the pan and check whether the fish is soft from both sides.
- Check salt & sugar are perfect according to your taste. Add little salt & sugar if required. Stir it well.

- Add 1/2 tsp garam masala powder, give it (the gravy) a good stir, and turn off the heat.
- Immediately cover the pan to infuse the garam masala aroma into the gravy.

- Bengali Biyebari style delicious doi maach or doi katla is ready. Serve this fish curry with piping hot white rice, Bengali fried rice, or Basanti Pulao.
Pro tips for making Best Bengali Biyebari Style Doi Maach recipe
Perfect fish weight for making Bengali Dahi fish recipe?
Fish weight does matter to make a perfect biyebari style doi maach recipe. How heavyweight fish you will use, the taste will be best accordingly. At least a minimum weight of 1.8 kg of fresh Katla / Rui (means any Paka Pona maach) requires for this doi fish recipe to get close to biye barir taste. As here I used a 2 kg 250 g catla fish.
Which fish is best to use in this Doi fish recipe?
In Biye bari, Doi Maach is generally cooked with Katla maach. However, in Bengali restaurants, big-size Rui /Rohu fish is also used to make this recipe. So you can use Katla or rui any one for making this doi fish curry recipe.
What kind of Yogurt is used in this Bengali fish curry?
Try to use fresh yogurt (Indian curd / Bengali tok doi), fresh yogurt is not too tangy and keeps a balance of taste. Whether with thick or light consistency is not countable.
Why Mustard oil is important for cooking doi maach recipe
Mustard oil was common in Bengali food pantries for ages so no Bengali curry including fish curry ever prepared without mustard oil. As this biyebari style fish curry is a traditional fish curry of Bengal so mustard oil is also a prime ingredient for exact taste and flavour. However, for a healthy reason or due to unavailability, you can replace it with any vegetable oil which suits you best.
How long to roast the masala for making doi maach?
Masala needs to roast in oil until masala leves oil from its sides. Masala floats on the roasted masala gravy alo indicates the masala was roasted well.
Is sugar mandatory for making this Bengali-style dahi maachli recipe?
Must use sugar to balance the tanginess of dahi, do not worry sugar does not make the fish or this whole dish sweet in taste. 2 tsp full sugar I used to balance the tanginess of the yogurt. More or less sugar is used according to how sour the yogurt is.
Role of Tomato in this Bengali doi fish recipe
Tomato is optional in making any fish curry recipe if the fish curry is cooked with tok doi / dahi / curd. Tomato just used to enhance the taste & texture as well. However, leave it to think of such traditional recipes prepared without tomatoes as a non-abundance of this veggie all through the year.
What is the right consistency for this doi fish gravy?
A thick & creamy gravy is a sign of perfect biyebari’r doi fish curry. To beat the taste must look over the consistency of this fish gravy.
Why Garam masala add-on for this doi fish recipe?
Garam masala is a key ingredient of this exotic fish curry. Here garam masala is used twice to uplift the taste along with taking your tastebud to the old day’s Bengali biyebarir doi maach recipe.