Creamy Indian-Style Salmon Curry Recipe

Indian Salmon Curry

By Lee Jackson ↣ Published on: October 12, 2019

Last Updated: May 1st, 20261 Comment

This Indian salmon curry is bright, aromatic and full of balanced flavours. Tender salmon cooks in a spiced coconut sauce that delivers nutty, sweet, tangy and spicy notes in every spoonful.

A bowl of Indian Salmon Curry decorated with fresh curry leaves, tomato and a drizzle of coconut cream

This recipe is a long-time favourite. While the exact spice mix can vary depending on what’s in your cupboard, the core idea remains the same: a fragrant coconut-based sauce scented with curry leaves and tempered whole spices, finished with a dash of tomato for acidity and a touch of sweetness and tamarind for balance. The result complements salmon’s natural richness without overwhelming it.

The sauce uses no onion, garlic or ginger — instead it relies on the depth of whole and ground spices paired with curry leaves and coconut milk. You can adapt the spice combination to taste; however, salmon consistently remains my preferred choice for this curry.

What’s Ahead?

A bowl of Indian Salmon Curry decorated with fresh curry leaves, tomato and a drizzle of coconut cream

Why it works?

Simple to prepare: Once you have Indian spices on hand, this curry comes together quickly. The method uses two spice steps — tempering whole spices and adding ground spices to form a rich base — which delivers a lot of flavor with minimal prep.

Deliciously balanced: The sauce is rich and complex but not heavy. Coconut milk, curry leaves and a touch of tomato, sugar and tamarind create a bright sauce that complements salmon perfectly.

The ingredients for a simple Indian Salmon Curry: Whole spices, ground spices, salmon, coconut milk and oil, curry leaves and tomatoes.

Stuff You’ll Need

The recipe uses a variety of spices, but you can substitute based on availability. Here are the core components:

  • Salmon: Fillets or steaks, skin removed if preferred. Cut into large chunks.
  • Coconut oil: Adds a subtle fragrance to the dish.
  • Whole spices: For tempering: mustard seeds, fennel, cumin, peppercorns, cardamom pods, cinnamon stick, fenugreek seeds and dried chillies.
  • Ground spices: Cumin, coriander, Kashmiri chilli (or paprika), turmeric and a little garam masala.
  • Fresh curry leaves: Key for aroma — use fresh where possible.
  • Coconut milk: Creates the creamy base.
  • Tomato passata: Adds a gentle tang. You can use blended fresh tomato.
  • Sugar, tamarind and lime: Balance sweetness and acidity at the end.
Curry leaves spluttering in coconut oil
Whole spices and curry leaves simmering in coconut oil
Ground spices and coconut milk forming a curry paste in a pan
Tomato being added to a simmering curry paste
Coconut milk being added to a simmering curry paste
A coconut curry sauce simmers in a pan
Fresh salmon being added to a coconut sauce
An Indian Salmon curry simmering in a pan
A bowl of Indian Salmon Curry decorated with fresh curry leaves, tomato and a drizzle of coconut cream

Step by Step

Follow these steps for a reliable result:

  1. Step 1: Heat coconut oil in a large pan or wok. Add fresh curry leaves and let them sizzle briefly.
  2. Step 2: Add the whole spices and fry for about a minute until aromatic.
  3. Step 3: Stir in the ground spices with a splash of coconut milk to prevent burning.
  4. Step 4: Add the tomato passata and simmer for a few minutes.
  5. Step 5: Pour in most of the coconut milk and stir to combine.
  6. Step 6: Add a little water, bring to a gentle simmer and cook for 8–10 minutes to meld the flavours.
  7. Step 7: Add the salmon, arranging pieces in a single layer. Simmer for 5–8 minutes until the fish is cooked; avoid excessive stirring to keep the pieces intact.
  8. Step 8: Remove from heat and add sugar, tamarind and lime juice. Stir gently to combine.
  9. Step 9: Serve garnished with extra curry leaves, diced tomato and a drizzle of reserved coconut milk. Serve with fluffy basmati rice.
A bowl of Indian Salmon Curry and rice decorated with fresh curry leaves, tomato and a drizzle of coconut cream

Pro Tips

Use a flexible approach with spices: choose 6–8 whole or ground spices that you enjoy. Some commonly used options include cumin, fennel, peppercorns, cardamom, cinnamon, fenugreek and dried chillies for whole spices, and cumin, coriander, turmeric, paprika, Kashmiri chilli and garam masala for ground spices.

You can add extras like peas, cooked green beans or spinach towards the end of cooking. Fresh cilantro or mint make good garnishes.

Make the sauce up to the step before adding fish and refrigerate or freeze. Reheat gently and add the salmon when ready to serve.

Serving & Storage Suggestions

This fish curry is best served fresh. Salmon is delicate and can overcook when reheated; if you must refrigerate leftovers, reheat gently and avoid excessive stirring. Freezing is not recommended for best texture.

A bowl of Indian Salmon Curry decorated with fresh curry leaves, tomato and a drizzle of coconut cream

Ready to get cooking?

Once you have your spices and ingredients ready, this curry comes together quickly. The flavour is vibrant and frames the natural richness of salmon without overpowering it. Serve with basmati rice and enjoy.

A bowl of Indian Salmon Curry decorated with fresh curry leaves, tomato and a drizzle of coconut cream

More recipes

If you enjoyed this curry, explore other Indian favourites for more inspiration.

  • Chicken Madras Curry
  • Madras Curry Powder
  • Spinach Dal (Dal Palak)
  • Methi Chicken Curry
  • Bengali Fish Curry (Macher Jhol)
  • Methi Mushroom Masala
  • Malai Prawn Curry (Chingri Malai Curry)
  • Jheenga Palak – Shrimp & Spinach Curry
  • Mughlai Chicken
  • Beef Balti
  • Chicken Ceylon (Sri Lankan Chicken Curry)
  • Chicken Saag
  • Akuri (Parsi Eggs)
A bowl of Indian Salmon Curry and rice decorated with fresh curry leaves, tomato and a drizzle of coconut cream

This recipe uses affiliations and may receive a commission based on your activity. Learn more.

A bowl of Indian Salmon Curry decorated with fresh curry leaves, tomato and a drizzle of coconut cream

Indian Salmon Curry

Main Course
Indian
Prep Time20
Cook Time25
Total Time45
4
405

Ingredients

Spice Mix 1

  • 15 fresh curry leaves
  • 1/2 tsp cumin seeds
  • 1/2 tsp fennel seeds
  • 1/4 tsp fenugreek seeds
  • 5 black peppercorns
  • 2 dried chillies
  • 1 cinnamon stick
  • 1 tsp black mustard seeds
  • 5 cardamom pods

Spice Mix 2

  • 1 tsp ground cumin
  • 1 tsp ground coriander
  • 1 tsp paprika
  • 2 tsp Kashmiri chilli powder
  • 1 tsp ground turmeric
  • 1/2 tsp garam masala
  • 1 tsp salt

Other Ingredients

  • 2 tbsp coconut oil
  • 1 x 400g can coconut milk
  • 1/2 cup tomato passata (or 1 large tomato, blended)
  • 1 tsp sugar
  • 1 tbsp tamarind pulp
  • 500 g fresh salmon (skin off)
  • 1 tomato, finely diced for garnish (optional)
  • Juice of 1 lime

Instructions

  • In a wok, heat the oil over medium-high heat. Add the fresh curry leaves and the whole spices from Spice Mix 1. Stir for about 30 seconds until fragrant.
  • Add Spice Mix 2 and about 1/2 cup coconut milk. Stir constantly for 2–3 minutes to prevent sticking; the oil may start to separate.
  • Stir in the tomato passata and simmer for 2–3 minutes.
  • Add most of the remaining coconut milk and about 1 cup of water. Bring to a simmer and cook gently for 8–10 minutes.
  • Add the salmon and cook for 5–8 minutes until done. Remove from the heat and stir in sugar, tamarind and lime juice. Serve immediately with rice.

Notes

Pro Tips

  • Whole spices: Mix and match from cumin, fennel, peppercorns, cardamom, cinnamon, fenugreek, cloves, nigella, dried chillies and curry leaves.
  • Ground spices: Use cumin, coriander, turmeric, paprika, Kashmiri chilli and garam masala to taste.
  • Extras: Add peas, cooked beans or spinach near the end and garnish with cilantro or mint.
  • Make ahead: Prepare the sauce up to just before adding fish and refrigerate or freeze. When ready, warm and add the salmon to cook through.
  • Serving: Best eaten fresh; refrigerate leftovers for a day or two and reheat gently.

Nutrition

Calories: 405kcal | Carbs: 9g | Protein: 28g | Fat: 30g