Fragrant, warming, and layered with bold spices, fish curry is a comforting Indian dish where tender fish pieces gently simmer in a vibrant tomato-coconut gravy. Bursting with flavor and ready in under an hour, it’s the perfect balance of simplicity and richness—ideal for a cozy weeknight dinner or a flavorful meal to impress your guests.
Origin Indian Fish Curry
Fish curries are enjoyed all along India’s coasts, with countless variations from Kerala to Bengal. This version draws inspiration from South Indian recipes, highlighting coconut milk, curry leaves, and warm spices for a silky, aromatic sauce.
What I Love About This Recipe
It’s so flavorful without requiring hours of cooking. The fish stays delicate and moist, and the curry tastes even better when you let it rest a little before serving.
Also Read : Traditional Sauerbraten
Indian Fish Curry
Course: Main CourseCuisine: IndianDifficulty: Medium4
servings30
minutes40
minutes250
kcalIndian Fish Curry is a flavorful and aromatic dish made with tender fish simmered in a spiced gravy of onions, tomatoes, garlic, and a blend of traditional Indian spices. Regional variations may include coconut milk, mustard seeds, or tamarind for added depth and richness. Served hot with steamed rice or flatbreads, this curry offers a perfect balance of heat, tang, and fragrance. It’s a beloved staple in coastal Indian cuisines, especially in Kerala, Bengal, and Goa.
Ingredients
1½ lbs firm white fish (cod, halibut, or tilapia), cut into chunks
2 tbsp vegetable oil
1 large onion, finely chopped
3 cloves garlic, minced
1-inch piece fresh ginger, grated
2 medium tomatoes, chopped
1 tsp ground coriander
1 tsp ground cumin
½ tsp turmeric
½ tsp Kashmiri chili powder or paprika
1 cup coconut milk
½ cup water or fish stock
Salt, to taste
Fresh cilantro, for garnish
Lime wedges, for serving
Directions
- Heat oil in a deep skillet or pot over medium heat.
- Add onions and cook until soft and golden, about 5–7 minutes.
- Stir in garlic and ginger; cook 1–2 minutes until fragrant.
- Add chopped tomatoes, coriander, cumin, turmeric, and chili powder. Cook 5–6 minutes, stirring, until tomatoes soften and oil begins to separate.
- Pour in coconut milk and water. Bring to a gentle simmer.
- Season sauce with salt.
- Add fish pieces carefully. Simmer 6–8 minutes until fish is cooked through and flakes easily.
- Garnish with fresh cilantro.
- Serve hot with steamed rice and lime wedges.
Notes
- For extra heat, add a chopped green chili with the garlic and ginger.
- You can also use shrimp or scallops instead of fish.
- Curry tastes even better after resting for 30 minutes to let the flavors meld.