Indian-Spiced Lamb Curry with Tomato and Coconut

By , Test Kitchen Director · Reviewed by AislePrompt Editorial · ·

A rich, aromatic lamb curry simmered in a vibrant tomato and coconut sauce with traditional Indian spices for a warming, comforting meal. This indian-inspired curry ready in about 130 minutes pairs lamb shoulder, cut into cubes, vegetable oil, large onion, finely chopped for a weeknight-friendly dinner that comes together with one pan and minimal cleanup. Each serving lands at about 480 calories and feeds 6, so it slots cleanly into a weekly meal plan and pairs well with a quick salad or grain on the side. Tap "Plan a meal with the AI" below to drop this recipe into your week and send the ingredients straight to Instacart. Nutrition values are approximate, calculated from USDA FoodData Central (fdc.nal.usda.gov) — verify against ingredient labels for any health-driven dietary plan.

Prep: 20 min Cook: 110 min Serves 6 Indian cuisine 480 cal/serving
Plan a meal with the AI → Shop this recipe on Instacart → Shop equipment ↓

Ingredients

Instructions

  1. Step 1: Heat 3 tbsp vegetable oil in a large pot over medium heat. Add 1 large finely chopped onion and sauté for 6-7 minutes until translucent and golden around the edges.
  2. Step 2: Stir in 4 minced garlic cloves and 1 tbsp grated ginger, cooking for 2 minutes until fragrant.
  3. Step 3: Add 2 tsp ground cumin, 2 tsp ground coriander, 1 tsp turmeric powder, 1 tsp garam masala, and 1/2 tsp cayenne pepper. Cook spices with the onion mixture for 1 minute to bloom the flavors.
  4. Step 4: Add 1.5 lbs cubed lamb shoulder to the pot and brown the meat on all sides for 8-10 minutes.
  5. Step 5: Pour in 14 oz canned diced tomatoes and 1 cup water, stirring to combine. Bring to a gentle boil, then reduce heat to low, cover, and simmer for 1.5 hours until the lamb is tender.
  6. Step 6: Stir in 1 cup coconut milk and 1 1/2 tsp salt, simmer uncovered for 10 minutes until the sauce thickens slightly.
  7. Step 7: Remove from heat and sprinkle 1/4 cup chopped fresh cilantro over the curry before serving. Serve with basmati rice or naan bread.

Equipment for this recipe

Top-rated tools to make this recipe successfully.

More Bakeware & baking tools → Shop all kitchen tools →

Frequently asked questions

How long does Indian-Spiced Lamb Curry with Tomato and Coconut take to make?

Total time is about 130 minutes (20 min prep + 110 min cook). Most home cooks find this fits comfortably into a weeknight; double the batch on Sunday for two dinners.

How do I store leftover Indian-Spiced Lamb Curry with Tomato and Coconut?

Cool to room temperature within 2 hours, then store in an airtight container in the fridge for up to 4 days. Reheat covered in a 350°F oven for 10-12 minutes, or microwave at 70% power in 60-second bursts to keep lamb shoulder, cut into cubes from drying out.

Can I substitute ingredients in Indian-Spiced Lamb Curry with Tomato and Coconut?

Yes — most ingredients in this recipe have flexible swaps. For oil, use any neutral high-smoke-point oil (avocado, grapeseed, refined coconut). For aromatics, dried herbs at ⅓ the volume of fresh work in a pinch. The full ingredient list is shoppable on Instacart so you can see substitutes in real time.

How do I scale Indian-Spiced Lamb Curry with Tomato and Coconut for a different number of people?

The recipe is written for 6 servings. Multiply each ingredient by (your serving target / 6). Cook time stays roughly the same up to 2x; for 3-4x batches, switch from a skillet to a sheet pan or stockpot so the food isn't crowded — overcrowding steams instead of browns.

What goes well with Indian-Spiced Lamb Curry with Tomato and Coconut?

Indian curry like this pair well with a simple grain (rice, couscous, or crusty bread), a quick salad with acid (lemon vinaigrette, pickled onions), and a pan sauce or yogurt-based dip. Tap "Plan a meal with the AI" to get specific side suggestions.