Chef Naeem’s Kitchen

Chef Naeem's Cape Malay Fish Curry

Cape Malay curry is defined by aroma rather than heat — cinnamon, cardamom and fennel carried on a tomato and onion base, finished with the sour edge of tamarind. Firm white fish is added at the very end so it poaches rather than boils.

4.8 · 96 reviews

A weeknight favourite · Sample ratings until customer reviews are collected

Jump to ingredients
Cape Malay fish curry in a copper bowl with basmati rice and fresh coriander
Preparation
20 min
Cooking
30 min
Servings
4 people
Difficulty
Medium

The story behind the dish

This recipe traces the line from Naeem's grandmother's kitchen in Bo-Kaap, where the masala was toasted fresh every Friday and the pot was never rushed. He has changed one thing: the fish now goes in last, off the boil, which keeps every piece intact.

Ingredients

  • 700 g hake fillets, cut into large chunksShop this
  • 2 onions, finely sliced
  • 3 tbsp sunflower oil
  • 1 cinnamon stick
  • 4 cardamom pods, bruised
  • 1 tsp fennel seeds
  • 1 tsp cumin seeds
  • 2 tbsp mild masala
  • 1 tsp ground turmeric
  • 4 garlic cloves and 20 g ginger, blended to a paste
  • 400 g chopped tomatoes
  • 2 tbsp tamarind paste
  • 2 curry leaves sprigs
  • Fresh coriander and steamed basmati rice, to serve

Equipment required

  • Heavy-based pot with a lid
  • Pestle and mortar or spice grinder
  • Wooden spoon

Step-by-step method

  1. 1

    Toast the whole spices

    Heat the oil in a heavy pot over medium heat. Add the cinnamon, cardamom, fennel and cumin and toast for one minute until the kitchen smells of them.

  2. 2

    Sweat the onions

    Add the onions with a pinch of salt and cook slowly for 10–12 minutes until deeply golden. This stage carries the sweetness of the finished curry — do not rush it.

  3. 3

    Add the aromatics

    Stir in the garlic-ginger paste, masala, turmeric and curry leaves. Fry for two minutes until the oil separates and the spices darken slightly.

  4. 4

    Build the sauce

    Add the tomatoes and 200 ml water, bring to a simmer and cook uncovered for 15 minutes until thickened and glossy. Stir through the tamarind and season.

  5. 5

    Poach the fish

    Reduce the heat to its lowest setting. Nestle the fish chunks into the sauce, cover, and poach for 6–8 minutes without stirring. Shake the pot gently instead of stirring.

  6. 6

    Rest and serve

    Turn off the heat and let the curry stand for five minutes. Scatter with coriander and serve with basmati rice and sambals.

Coming soon

Watch Chef Naeem Prepare This Recipe

Video coming soon — YouTube, Instagram Reels and TikTok ready

Chef’s tips

  • A curry improves overnight — but not with fish in it. Make the sauce a day ahead and poach the fish fresh.
  • Tamarind is not optional. It is the sour backbone that separates Cape Malay curry from every other curry.
  • Use a firm fish. Hake, kingklip and yellowtail hold their shape; delicate fish will disintegrate.

Storage advice

Refrigerate for up to two days. Reheat very gently over low heat, covered, without stirring. Freeze the sauce alone for up to three months.

Frequently asked questions

Which fish works best?
Firm white fish. Hake is the classic and best-value choice; kingklip is the luxury version and holds beautifully.
Is this curry hot?
No — it is aromatic rather than fiery. Add a slit green chilli with the onions if you want heat.
Can I make it dairy-free?
It already is. There is no cream or yoghurt in a traditional Cape Malay fish curry.

Nutritional information

Estimated values per serving. Actual values vary with portion size and ingredients.

Energy
395 kcal
Protein
40 g
Fat
16 g
Carbohydrate
22 g
Sodium
690 mg

More from Chef Naeem's Kitchen

Related recipes