
This coconut fish curry is rich, fragrant, and easy enough for a weeknight dinner. Tender white fish simmers in a spiced coconut sauce with sweet squash and sweet potato, then gets finished with lime and fresh coriander for a bright, balanced finish.
Place the fish in a large bowl. Season with 1/2 tsp salt, a generous pinch of black pepper, half of the lime juice, and 1/2 tsp of the turmeric. Gently toss to coat, then set aside while you prepare the curry base.
Heat the oil or ghee in a large frying pan over medium heat. Cook the onion for 8-10 minutes until softened. Stir in the ginger, garlic, remaining 1/2 tsp salt, ground cumin, ground coriander, chilli flakes or powder, and the remaining 1/2 tsp turmeric. Cook for 1-2 minutes until fragrant, then stir in the tomato puree.
Microwave the butternut squash and sweet potato mix with a splash of water in a covered heatproof bowl for about 3 minutes, or until just tender. Add the vegetables to the pan and stir well. Pour in the coconut milk, 180 ml water, and tamarind paste, then season lightly with salt and black pepper. Simmer for 10-12 minutes until the sauce thickens slightly and the vegetables are fully tender.
Add the marinated fish to the simmering sauce and cook for 4-6 minutes, stirring gently, until the fish is opaque and flakes easily. Remove from the heat, stir in the remaining lime juice, and scatter over the chopped coriander. Serve hot with cooked rice.
If you do not have tamarind paste, use a little extra lime juice for brightness. Cod, haddock, or pollock all work well here. Store leftovers in an airtight container in the fridge for up to 2 days, and reheat gently so the fish does not break up too much.




