Main Courses
This canned salmon curry recipe transforms pantry staples into a creamy, aromatic one-pot meal that delivers restaurant-quality depth in just 25 minutes. The secret lies in balancing traditional spice toasting with modern shortcuts—like canned salmon—to create a sauce that's velvety, complex, and packed with umami.
I developed this after realizing how often canned salmon gets overlooked in home cooking, and it’s become my go-to for quick yet satisfying weeknight dinners.
The beauty of this curry is its foolproof simplicity: no marinating, no last-minute grocery runs, and just one pot to clean. You’ll start with a fragrant spice base—cumin, coriander, and turmeric—then build layers of flavor with coconut milk and fresh herbs.
The canned salmon breaks apart effortlessly, infusing the sauce with its natural richness while keeping prep under 15 minutes.
What you’ll end up with is a creamy, golden curry where the salmon flakes apart at the first spoonful, the spices sing with warmth, and the sauce clings to every bite.
Serve it over steamed rice or with crusty naan to soak up every drop—this is the kind of dish that turns a simple can into a centerpiece. Ready to make it?
This recipe also works beautifully as a meal-prep base, scaling easily for leftovers or batch cooking. The sauce thickens as it sits, making it even more flavorful the next day. Perfect for busy nights when you crave comfort without compromise.
Ingredients for canned salmon curry
Pantry staples meet restaurant-worthy spice—just 15 minutes to a creamy, aromatic curry.
| Ingredient | Amount | Notes |
|---|---|---|
| Canned Salmon (with bones) 🐟 | 2 cans | High-quality, wild-caught preferred |
| Coconut Milk (full-fat) 🥥 | 1 can | 13.5 oz can, unsweetened |
| Yellow Onion 🧅 | 1 whole | Medium size, diced fine |
| Garlic Cloves 🧄 | 4 cloves | Fresh, minced fine |
| Fresh Ginger 🌿 | 1 tbsp | Grated, finely |
| Ground Cumin 🌿 | 1 tbsp | Toasted for deeper flavor |
| Ground Coriander 🌶️ | 1 tbsp | Freshly ground preferred |
| Turmeric Powder 🌶️ | 1 tsp | Bright yellow, vibrant |
| Garam Masala 🌶️ | 1 tsp | Authentic blend preferred |
| Tomato Paste 🍅 | 2 tbsp | Squeeze tube or canned |
| Fresh Cilantro 🌿 | ¼ cup | Stems removed, chopped |
| Lime Juice 🍋 | 2 tbsp | Freshly squeezed |
| Vegetable Oil 🫒 | 2 tbsp | Neutral high smoke point |
| Salt 🧂 | 1 ½ tsp | Diamond Crystal kosher |
| Black Pepper 🌶️ | ½ tsp | Freshly cracked |
| Jasmine Rice 🍚 | 1 ½ cups | Uncooked, long grain |
The salmon makes this curry shine—wild-caught with bones is ideal, as the bones add richness to the sauce. I always grab Vital Choice or Wild Planet cans from Whole Foods or Trader Joe's for the best quality. If you're using the canned salmon with skin, remove it before adding to the pot—it doesn’t break down well. The coconut milk? Full-fat only—it’s what gives this curry that velvety texture. Skip the light version, trust me. For the spices, Penzeys or Spicewalla are my go-tos for authentic garam masala, but the bulk bins at Indian grocery stores often have better quality at a fraction of the cost.
No fresh ginger? Powdered works at half the amount, but it’s not the same. Running low on garam masala? Mix equal parts cumin, coriander, cinnamon, and cardamom for a DIY version. The tomato paste can be swapped for 1/4 cup crushed tomatoes if you prefer a chunkier sauce. Fresh cilantro is non-negotiable here—it brightens up the dish, but if you’re out, dried oregano at 1/4 tsp will do in a pinch. The lime juice adds a tangy finish, so if you’re using bottled, make sure it’s 100% pure—none of that watered-down stuff. For the rice, jasmine is perfect, but basmati or even brown rice works too if that’s what you have on hand.
This curry tastes even better the next day—the flavors meld beautifully when reheated. Store leftovers in an airtight container in the fridge for up to 4 days, or freeze for 3 months in portion-sized containers. I like to double the batch and freeze half—perfect for lazy nights when you don’t feel like cooking. The sauce thickens as it cools, so a splash of water or coconut milk can loosen it up if needed. Serve it over rice or with warm naan or flatbread to soak up every last bit of that creamy, spiced goodness.
Why You'll Love This Recipe
- Pantry-to-Pot Magic: I swear by this one—no fresh salmon needed. Open a can, dump the bones and flakes into the pan, and let the coconut milk work its richness into every bite. That’s it. Zero fancy shopping, zero waste.
- Umami Bomb: Here’s what sold me—the bones. Simmered with ginger and garlic, they melt into the sauce, turning it into this deep, savory elixir. The salmon stays flaky, the coconut stays creamy, and somehow, it’s better than any restaurant curry I’ve had.
- Lunchbox Hero: Between us, this is my go-to for meal prep. Pack it in jars or containers, and it stays thick and flavorful for days. (Yes, even on a Tuesday night when you’re staring at a sad fridge.) Add rice or naan, and suddenly you’ve got a full week of effortless lunches.
- Budget Luxury: Full-fat coconut milk makes it feel indulgent, but the canned salmon keeps it cheap. I make this for myself, my roommates, or when friends drop by—no one ever guesses it’s not homemade from scratch. (Not the prettiest, but the taste makes up for it.)
Step-by-step instructions for canned salmon curry
Here's how to create a rich, aromatic curry that delivers restaurant-quality flavor in a single pot.
Sauté Aromatics Until Fragrant
Heat the 2 tablespoons vegetable oil in a large, heavy-bottomed pot over medium heat. Add the 1 whole yellow onion, diced fine, and cook for 5 minutes until softened and translucent. This foundational step builds flavor—don't rush it.
Add the 4 cloves garlic cloves, minced fine, and the 1 tablespoon fresh ginger, grated finely. Cook for another 2 minutes until the garlic becomes golden and fragrant. The aroma should fill your kitchen—this is your signal that the aromatics are ready for the spices. Watch carefully; garlic burns quickly.
Toast Spices and Build the Curry Base
Add the 1 tablespoon ground cumin, 1 tablespoon ground coriander, 1 teaspoon turmeric powder, and 1 teaspoon garam masala all at once. Stir constantly for 1 minute until the spices become fragrant and toasted. This step develops their full flavor potential—you'll notice the aroma deepen and become more complex.
Next, stir in the 2 tablespoons tomato paste and cook for 2 minutes until it darkens slightly. This creates a rich, concentrated base for your curry. Pour in 1 cup of the 1 can coconut milk (full-fat), stirring to combine. Let it simmer for 3 minutes until slightly thickened—this ensures your sauce has body and depth.
Incorporate Salmon and Simmer
Add the 2 cans canned salmon (with bones), drained but reserving the liquid, and stir gently to distribute evenly. Pour in the remaining ½ cup coconut milk and add 1.5 teaspoons salt and 0.5 teaspoon black pepper. Bring to a gentle simmer over medium-low heat and cook for 8-10 minutes, stirring occasionally.
Here's where the magic happens: the salmon absorbs the aromatic spices while the coconut milk creates a velvety texture. You'll see the curry thicken gradually—this is perfect. If it reduces too quickly, add 2-3 tablespoons water to maintain the creamy consistency promised in the title.
Finish with Fresh Herbs and Lime
Reduce heat to low and stir in the 0.25 cup fresh cilantro, stems removed and chopped. Add the 2 tablespoons lime juice and cook for 1 final minute—this brightens the flavors and balances the richness. The curry should be creamy, aromatic, and just slightly thickened.
Taste and adjust seasoning if needed—this is your opportunity to perfect the balance. The curry should be vibrant with spice, tangy from the lime, and rich from the coconut milk. Remove from heat immediately to preserve the fresh flavors you've just incorporated.
Prepare and Combine with Jasmine Rice
While the curry simmers, rinse the 1.5 cups jasmine rice under cold water until the water runs clear. In a separate pot, bring 2 cups water to a boil, add the rice, reduce heat to low, cover, and cook for 15 minutes until tender. The rice should absorb all the liquid and be fluffy—this is crucial for the perfect texture.
Once the rice is cooked, fluff it gently with a fork and divide among serving bowls. Ladle the creamy salmon curry over the rice, ensuring each serving gets a generous portion. The contrast of fluffy rice with the rich, spiced curry creates a satisfying balance that makes this dish truly special.
Pro Tips For Making Canned Salmon Curry
- Simmer Slow and Steady: Canned salmon curry isn’t a race—bring it to a gentle boil first, then drop the heat to lowest possible and let it bubble just enough to see tiny ripples. I used to rush this, and the coconut milk would split or the salmon would turn rubbery. Trust me, 20 minutes at low heat is better than 10 minutes of frenzied simmering.
- Mince Ginger Like You Mean It: Skip the microplane if you’re impatient—finely chop that ginger with a knife until it’s almost paste-like. The difference? Smooth heat, not gritty chunks. (Yes, it takes 30 seconds longer, but your taste buds will notice.) Store-bought pre-grated ginger is a shortcut, but it loses flavor fast—fresh is worth the effort here.
- Drain and Rinse the Salmon: Open that can, dump the salmon into a colander, and rinse it under cold water before adding it to the curry. The bones release a bitter brine, and skipping this step means your dish will taste like fishy dishwater. Do it even if the can says “ready to eat”—trust the process.
- Toast the Aromatics Hard: Sauté the onions, garlic, and ginger in oil until the garlic is golden-brown, not just fragrant. That extra minute of browning adds depth—like the difference between black coffee and a latte. (And no, “just until fragrant” isn’t enough.) Use medium-high heat and watch it like a hawk.
Serving suggestions for leftovers
Rice Pairing Perfection
Jasmine rice is my go-to base for this curry—its delicate floral aroma complements the coconut milk's creaminess beautifully. Cook 1.5 cups uncooked jasmine rice in 2 cups water for 15 minutes until fluffy.
For extra flavor, toast the rice in a dry pot over medium heat for 2 minutes before cooking, which adds a subtle nutty depth. 🌟
Need a quicker option? Use microwaveable basmati rice—just follow package instructions and let it sit covered for 5 minutes after cooking to steam. For a heartier meal, swap in brown rice (it takes 45 minutes but adds chewy texture).
Always rinse the rice thoroughly to remove excess starch and prevent a gummy texture.
Bread and Flatbreads
Warm naan or roti is a must—toss them in a 170°F oven for 5 minutes to keep them soft. For extra flavor, brush with garlic butter or sprinkle with flaky sea salt. I love using Trader Joe's frozen naan for convenience—just bake it for 8 minutes until crispy.
For a gluten-free option, try cauliflower rice sautéed with 1 tbsp olive oil and ½ tsp turmeric until tender. It absorbs the curry sauce beautifully while adding a subtle earthy note. For a crunchy contrast, serve with toasted pita chips on the side.
Vegetable Sides
Steamed green beans or bok choy add freshness to balance the rich curry. Toss them with 1 tsp sesame oil and a pinch of red pepper flakes before serving. For a tropical twist, serve with mango slices—the sweetness cuts through the spice wonderfully.
Roasted cauliflower or sweet potatoes bring heartiness to the plate. Toss 1 lb cauliflower florets with 1 tbsp olive oil, ½ tsp cumin, and salt, then roast at 400°F for 20 minutes until golden. The caramelized edges add a delicious contrast to the creamy curry.
Garnish Game-Changers
Fresh cilantro leaves and lime wedges are non-negotiable for brightness. Add a sprinkle of toasted coconut flakes for texture—just toast 2 tbsp unsweetened flakes in a dry pan for 2 minutes** until golden. For heat lovers, drizzle with sriracha or chili crisp before serving.
For a restaurant-worthy finish, top with crispy fried shallots or crumbled feta cheese. I also love a drizzle of white truffle oil (just ½ tsp) for an unexpected luxury touch. The key is to balance flavors—sweet, spicy, tangy, and creamy all in one bite!
Nutrition facts
Frequently asked questions
Can I use canned salmon without bones for this curry?
Yes, but you’ll miss out on extra richness! The bones add natural collagen that thickens the sauce beautifully. If you're using boneless, add 1/4 cup fish or vegetable broth to compensate for the missing depth. The flavor will still be delicious—just slightly lighter in texture.
How do I adjust the spice level for kids or sensitive palates?
Reduce the garam masala to 1/2 teaspoon and omit red pepper flakes entirely. For extra mildness, add 1/4 cup plain yogurt at the end to cool the heat. The coconut milk already provides a natural creaminess that balances spice, so the dish remains flavorful without being fiery.
What’s the best way to store leftovers?
Let the curry cool completely, then transfer to an airtight container with a lid. It keeps in the fridge for 4 days or freezes beautifully for 3 months. Reheat gently on low heat with a splash of water or coconut milk to restore creaminess. The flavors actually improve overnight as the spices meld!
Can I make this curry in an Instant Pot or slow cooker?
For the Instant Pot, sauté onions/garlic first, then add all spices and tomato paste. Add 1 cup coconut milk, salmon, and 1/2 cup water, then cook on High Pressure for 5 minutes. Release pressure naturally. For a slow cooker, combine all ingredients on Low for 2-3 hours or High for 1 hour. The slow cooking enhances the spice infusion even more.
What if my curry tastes too coconutty?
Balance the coconut flavor by adding 1 teaspoon tamarind paste or 1 tablespoon apple cider vinegar at the end for tanginess. Fresh herbs like cilantro and lime juice also help cut through the richness. If it's still too heavy, stir in 1/4 cup plain yogurt to lighten the texture while adding creaminess.