Authentic Sri Lankan Fish Curry that is easy to make, and full of flavor!

Sri Lankan fish curry is legendary. And that’s no surprise, considering Sri Lanka is an island in the heart of the Indian Ocean. I grew up eating a lot of fish, in a lot of different ways. Fried fish was my favorite way I willingly ate fish as a kid, but now as an adult, I’ve come to appreciate the incredibly complex flavors that this simple and aromatic fish curry has to offer! I know you will love this fish curry too! 🙂

What kind of fish curry is this?

There are many different ways to make fish curry. Even in Sri Lanka, there are multiple ways to do so. So here’s what you can expect from this fish curry. This Sri Lankan fish curry is PACKED with flavor! It is spicy (which can be adjusted to your taste), but also has a lovely sour flavor from tamarind. I make most of my Sri Lankan curries with my own Sri Lankan curry powder, but add other spices to balance the flavor profile. I also use coconut milk in this recipe. The coconut milk tempers the heat and adds creaminess. But you can just as easily leave out the coconut milk for a spicier curry (mirisata curry).

What type of fish can I use?

A firm fleshed fish is best for this kind of fish curry.

Sword fishTuna (kelavalla /කෙලවල්ලා)Sailfish (thalapath / තලපත්)

You can also use other types of fish like mackerel, for example.

How to prepare the fish for this fish curry

If you’re using firm fish, then you can cut the fish steaks into pieces. Here I used sword fish and cut it into 2 – 3 inch pieces. If you’re using smaller fish like mackerel, then you can cut the fish into steaks too, with the bone and skin. This will also help hold the shape of the fish as it cooks.
Sprinkle the spices and seasoning over the fish, and mix, and allow the fish to marinate for about 10 – 30 minutes.

How to make the Sri Lankan fish curry

The first step is to prepare the fish and marinate it. This is described above. You can buy fish that is already cleaned and cut from your fishmonger, so that you don’t have to worry about breaking down a big fish. While the fish is marinating, prepare all the other ingredients. Slice or dice the onion. Mince the garlic and ginger. Have the spices measured and ready to go as well, so that you’re not scrambling to find the spices while making the curry. Also bear in mind that all the amounts for the spices are a guide. You can adjust them to your taste. Add less chili if you don’t like it spicy, or add more lemon juice if you want the fish curry to be a little sour. Saute the onion, curry leaves, garlic, and ginger, until the onion is softened. Add the spices and saute for a few seconds to toast the spices. It should get very aromatic at this point with all the toasted spices! Add the fish pieces and gently mix to coat the fish in all the spices.

Coconut or water for the curry sauce?

You can choose to simmer the curry in either water or coconut milk. There are a few options, Once you’ve simmered the fish curry and the fish is cooked through, it is ready to be served and eaten! I do prefer to let the curry sit for about 20 – 30 minutes, just to let all the flavors mingle and develop.

Serving suggestions

This Sri Lankan fish curry can be served with rice, roti, or string hoppers. Both pol roti (coconut roti), and roti canai will go PERFECTLY with this fish curry! An accompanying veggie side dish or two will also be fantastic. Here are some flavor-packed options,

Mushroom curryCashew curryGreen bean dry curry (one of my favorites to pair with this fish curry!)Mango curryPumpkin curryCarrot curry

Other variations of this fish curry

Sri Lankans love fish, so we have multiple ways of eating fish. Here are some variations of this curry. Make a dry curry – Add only a little of the liquid mentioned in the recipe to cook the fish. Then simmer the curry as per the recipe, and add just enough coconut milk to make sure the pot isn’t dry. Once the fish is cooked through, cook off the coconut milk and keep the curry dry (with no curry sauce/gravy). Deep fry the marinated fish to create a golden brown crust, and add that to the curry. The crisp exterior will be even better in a dry curry, and since the fish is already mostly cooked through, you don’t have to simmer it for too long. Use either prawns / shrimp or squid to make a seafood version of this curry.

Sri Lankan Fish Curry Recipe - 36Sri Lankan Fish Curry Recipe - 42Sri Lankan Fish Curry Recipe - 97Sri Lankan Fish Curry Recipe - 96Sri Lankan Fish Curry Recipe - 44Sri Lankan Fish Curry Recipe - 52Sri Lankan Fish Curry Recipe - 76Sri Lankan Fish Curry Recipe - 29Sri Lankan Fish Curry Recipe - 54Sri Lankan Fish Curry Recipe - 56Sri Lankan Fish Curry Recipe - 42Sri Lankan Fish Curry Recipe - 7Sri Lankan Fish Curry Recipe - 35Sri Lankan Fish Curry Recipe - 78Sri Lankan Fish Curry Recipe - 77Sri Lankan Fish Curry Recipe - 69Sri Lankan Fish Curry Recipe - 31