Go Back
+ servings
Bengali fish curry with fish fillets in a white plate

Bengali Fish Curry Recipe

This Bengali Fish Curry or Macher jhol is made with Rohu or Indian carp. It is delightfully spicy and tasty. You can cook the fish both on the skillet or in Air fryer.
Course Main Course | Curry
Cuisine Indian
Keyword Bengali fish curry, Indian fish curry, macher jhol
recipe Bengali fish curry, Indian fish curry, macher jhol
Cook Time 15 minutes
Marination time 15 minutes
Total Time 30 minutes
Servings 4
Calories 179kcal



  • 1 lb. Rohu fish fillets or any white firm flesh fish fillets or 500 gm.
  • 2 onions made into paste
  • 2 tsp. ginger paste
  • 1 tsp. garlic paste
  • 2 tomatoes made into paste
  • 1 tsp. mustard paste optional
  • 3 tbsp. Mustard oil for skillet frying OR
  • 2 tsp. mustard oil for Air frying
  • 1 tsp. mustard seeds
  • 1 tsp. Nigella seeds or kalonji
  • 1 tsp. cayenne or red chilli powder
  • 1 tsp. coriander powder
  • 2 tsp. turmeric powder
  • 1 tsp. garam masala optional
  • 1 tsp. lemon juice
  • 4-5 green chillies
  • chopped cilantro to garnish
  • Salt to taste


  • First, clean the fish and marinate it with 1 tsp. turmeric powder and salt and keep aside for 15 minutes.

In the skillet

  • Heat 2 tbsp. of mustard oil in a skillet and cook the fish fillets till they are golden brown on both sides for about 2 minutes each side. They don't need to be fully cooked just browned. Keep aside.

In the Air fryer

  • Preheat Air fryer at 200 C or 390 F for 3 minutes. Brush the air fryer basket with mustard oil. Also brush the fish fillets with oil on both sides.
  • Lay them down in the air fryer basket in a single layer. Air fry for 4 minutes till they are ⅔ cooked and look browned. Take out and keep aside.

To make the curry

  • To make the gravy, take the remaining mustard oil in the same pan. Heat it and add mustard seeds and kalonji or nigella seeds. Allow them to sputter for 30 seconds.
  • Add in the onion paste, sliced green chillies and ginger-garlic paste and cook till everything is browned. This takes about 5-8 minutes on low heat.
  • Add tomato paste along with spices -- cayenne, coriander powder, garam masala (if using) and salt. Cook for about 5 minutes on low flame to assimilate everything.
  • Add in a cup of water and the fried fish pieces. Cover and cook for about 3-4 minutes.
  • Taste and adjust seasoning. Garnish with lemon juice, coriander leaves and serve hot with boiled rice.


1. You can also add 1 tsp. of mustard paste to the curry. This can be prepared by adding 1 tbsp. of water to 1 tsp. mustard seeds and blending it. This enhances the mustard taste in the curry. I avoid it because I find it very pungent. 2. Use of mustard oil really adds a lot to the flavour of the curry. But you can use olive oil or any other vegetable oil as substitute. 2. Buy fresh fish. You can use Catla (Bengal carp) or any other firm fish with white flesh like cod, halibut or similar. 3. The use of nigella seeds and mustard seeds in the tempering gives it a lovely taste. Also this curry is traditionally a bit runny so add water accordingly. 5. The nutrition values are for the air fryer version. For skillet version, each serve has 100 Calories more due to use of more oil.


Calories: 179kcal | Carbohydrates: 12g | Protein: 22g | Fat: 4g | Saturated Fat: 1g | Cholesterol: 49mg | Sodium: 218mg | Potassium: 700mg | Fiber: 4g | Sugar: 4g | Vitamin A: 630IU | Vitamin C: 20mg | Calcium: 54mg | Iron: 2mg