If you are looking for a fish curry recipe that is easy, flavour-packed, and perfect for everyday cooking, this one is such a good one to keep on hand. It is rich without being heavy, gently tangy from the tamarind, full of warming spice, and simple enough to make even on a busy day.
This curry starts with mustard seeds, cumin seeds, onion, garlic, curry leaves, crushed red chillies, turmeric, and dhania powder, which create a beautifully fragrant base. Chopped tomatoes and green chillies are then added, followed by tamarind for that lovely depth and slight sharpness that works so well with fish. The hake fillets are added towards the end so they stay tender and cook gently in the sauce.
This recipe was adapted from Rick Stein’s Madras fish curry, which I have always loved, and then tweaked a little to suit the way I enjoy cooking it at home. It is simple, delicious, and one of those recipes that can easily become a regular in your kitchen.


The beauty of this fish curry lies in the balance of flavours. The mustard seeds and cumin seeds create the first layer of fragrance, the onions and garlic build savoury depth, and the curry leaves and spices bring warmth. The tomatoes cook down to form the body of the sauce, while the tamarind adds that unmistakable tangy note that lifts the whole dish.
The sugar helps round everything off, softening the sharper edges without making the curry sweet, and the kasuri methi added at the end gives the final dish a beautiful finish. Once the fish is added, it only needs a short time to cook, allowing it to stay soft and tender while absorbing all the flavour from the sauce.

This recipe works well with both. I used frozen hake fillets because I had them in my freezer, and they worked beautifully. If you are using fresh fish, that works just as well, but keep in mind that it will cook a little faster. The key is not to overcook the fish, whichever version you use.
That is one of the lovely things about this recipe – it is practical enough for real life. If you have frozen fish in the freezer, you can still make a really delicious curry without any fuss.
This curry begins by heating oil in a large pot over medium to high heat. Once the oil is hot, the mustard seeds and cumin seeds are added and allowed to cook briefly until fragrant. This first step is important because it flavours the oil and starts building the base of the curry immediately.



The sliced red onion goes in next and is cooked until softened. Once the onion has started to turn soft and translucent, the sliced garlic is added and cooked for another couple of minutes. Then come the curry leaves, crushed red chillies, turmeric, and dhania powder. At this stage, the pot starts smelling incredible, and you can really feel the curry base coming together.



Next, the chopped tomatoes and slit green chillies are added, and the mixture is left to cook down for around 10 to 13 minutes. This part matters because it allows the tomatoes to soften properly and become part of the sauce rather than just sitting in it.



While the tomatoes are cooking, the tamarind is prepared. If using a block, it is soaked in hot water and strained so that you end up with about 100ml of tamarind liquid. Once the masala base is ready, the tamarind liquid is added to the pot, bringing that beautiful tangy flavour that makes fish curry so delicious. The sugar is then stirred through to balance the acidity and heat.



The fish fillets are then added and cooked gently in the sauce until just done. This final stage should not be rushed, but it also should not go on too long. Fish cooks quickly, and the goal is to keep it tender and intact. Once cooked, the curry is finished with kasuri methi and chopped dhania for freshness and aroma.



Fish curry is not difficult, but a few simple details make a big difference.
Tamarind adds a sour, tangy depth that works beautifully with fish. It brightens the curry, balances the richness of the oil and spices, and gives the sauce a more layered flavour. It is one of the ingredients that makes this curry feel especially lively and moreish.
Combined with the tomato and green chillies, it creates a sauce that feels bold and comforting at the same time.
This fish curry recipe is delicious served with roti, cumin rice, homemade naan, or even fresh white bread. The sauce is so good that you will want something to soak up every last bit.
If you want to keep things simple, cumin rice is a beautiful choice. If you want a more comforting, hands-on meal, roti or bread works wonderfully too.


Store any leftover fish curry in an airtight container in the fridge for up to 2 days. Reheat gently on the stove or in the microwave until just heated through.
Because fish is delicate, it is best not to overheat it, as that can affect the texture.
Yes, absolutely. Frozen hake fillets work very well in this recipe and are a convenient option for everyday cooking.
Yes. Fresh fish works beautifully too, just keep in mind that it may cook a little faster.
Tamarind adds a tangy depth that balances the spices and works especially well with fish.
Roti, cumin rice, naan, or fresh white bread all work beautifully.
Yes. You can increase the crushed red chillies or add more green chillies to suit your taste.
This fish curry recipe is simple, flavour-packed, and so worth making. With its fragrant spice base, tangy tamarind, tender fish, and easy method, it is the kind of curry that feels both practical and special.
Other recipes you might like, just click on the image to get the recipe.






This fish curry recipe is a flavour-packed curry made with mustard seeds, cumin, onion, garlic, curry leaves, tomatoes, tamarind, green chillies and hake fillets. It is simple, delicious and perfect with roti, rice, naan or bread.