Sri Lankan Fish Curry
A fiery, tangy Sri Lankan fish curry simmered in a dark, roasted coconut milk gravy with goraka, curry leaves and fenugreek — authentic island cooking at its finest.
About This Recipe
Sri Lankan fish curry is among the most complex and intensely flavoured fish dishes in the world. Unlike Indian fish curries, the Sri Lankan version uses roasted curry powder (giving the gravy a darker, earthier flavour), goraka (Gamboge, a souring agent similar to tamarind that is distinctive to Sri Lanka), fresh curry leaves and fenugreek seeds. The coconut milk is often partly reduced before adding to create a thicker, richer sauce. It is typically eaten with steamed rice, parippu (dhal), mallum (wilted greens) and pol sambol (scraped coconut relish) — a meal that represents the heart of Sri Lankan home cooking.
Ingredients
Serves 4
- 700 gfirm white fish fillets(such as tuna, kingfish, cod or sea bass, cut into large pieces)
- 400 mlcoconut milk
- 2sprigs fresh curry leaves(about 20 leaves)
- 1large onion(thinly sliced)
- 4 clovesgarlic(finely sliced)
- 1 tablespoonfresh ginger(grated)
- 2 tablespoonsSri Lankan roasted curry powder
- 1 teaspoonchilli powder(adjust to heat)
- 0.5 teaspoonturmeric
- 0.5 teaspoonfenugreek seeds
- 2 piecesgoraka (Gamboge)(or 1 tablespoon tamarind paste dissolved in 2 tablespoons water)
- 2 tablespoonscoconut oil or vegetable oil
- 1 teaspoonsalt(or to taste)
- 100 mlwater
- 1green chilli(slit lengthways, optional)
Instructions
- 1
Marinate the fish
Rub the fish pieces with turmeric, half the chilli powder and a pinch of salt. Set aside for 10 minutes.
- 2
Fry the spices and aromatics
Heat the oil in a wide, heavy pan over medium heat. Add the fenugreek seeds and fry for 30 seconds until they turn golden (watch carefully — they burn fast). Add the curry leaves (they will splutter), onion, garlic and ginger. Fry for 8 minutes until the onion is softened and lightly golden.
- 3
Add the curry powder and chilli
Add the roasted curry powder and remaining chilli powder. Stir constantly for 2 minutes, adding a splash of water to prevent burning, until the spices are fragrant.
- 4
Add coconut milk and goraka
Pour in the coconut milk and water. Add the goraka pieces (or tamarind liquid). Stir well and bring to a gentle simmer. Add the green chilli if using.
- 5
Add the fish
Gently lower the marinated fish into the simmering sauce. Do not stir — shake the pan instead to prevent the fish from breaking. Cook for 12–15 minutes, depending on thickness, until the fish is cooked through and flakes gently.
Never stir a fish curry vigorously — the fish will break apart. Swirl the pan gently instead.
- 6
Serve
Taste and adjust salt. Serve with steamed rice, pol sambol and parippu dhal. The curry improves significantly on the second day.
Pro Tips
- →
Sri Lankan roasted curry powder is darker and earthier than Indian curry powder. Making your own by dry-roasting whole spices gives the best result.
- →
Goraka (Gamboge) is the authentic souring agent. Tamarind is the best substitute if unavailable.
- →
The curry tastes considerably better the next day as the spices meld and the fish fully absorbs the sauce.
Variations
- •
Use prawns instead of fish fillets for a quicker version — prawns cook in 5 minutes.
- •
Add a halved tomato and a piece of pandan leaf to the gravy for extra complexity.
Storage
Refrigerate in an airtight container for up to 2 days. Reheat gently to avoid overcooking the fish. The gravy alone freezes well for up to 1 month.
History & Origin
Fish curry has been central to Sri Lankan cooking for millennia, shaped by the island's coastal geography and the influence of South Indian, Malay, Arab and Dutch colonial cuisines. The use of goraka distinguishes Sri Lankan fish curry from all other regional traditions.
Frequently Asked Questions
What is roasted curry powder and where can I buy it?
Sri Lankan roasted curry powder is made from dry-roasting whole spices before grinding, giving a darker, smokier flavour than raw curry powder. It is available in Sri Lankan grocery shops or online. You can make it by dry-roasting coriander, cumin, fennel, cinnamon, cloves, cardamom and chilli before grinding.
Can I use canned coconut cream instead of coconut milk?
Yes — it will make a richer, thicker sauce. Thin with a little water to your preferred consistency.
Nutrition Facts
Per serving (350g / 12.3 oz) · 4 servings total
Time Summary
Have Questions?
Ask our AI cooking assistant anything about this recipe — substitutions, techniques, scaling.
Chat with AI Chef →More Sri-lankan Recipes
Community
Join the conversation
Sign in to leave a comment and save your favourite recipes