Quick Recipe Version (TL;DR)
Quick Ingredients
- 1 1/2 lb (680 g) boneless lamb shoulder, cut into 1-inch pieces
- 1 3/4 tsp kosher salt, divided (plus more to taste)
- 1/2 tsp black pepper
- 2 tbsp neutral oil
- 1 tbsp unsalted butter
- 1 large yellow onion, diced
- 2 medium carrots, diced
- 2 celery ribs, diced
- 4 garlic cloves, minced
- 1 tbsp fresh ginger, grated
- 2 tbsp mild curry powder
- 1 tsp ground cumin
- 1 tsp ground coriander
- 1/2 tsp ground turmeric
- 1 tsp garam masala
- 2 tbsp tomato paste
- 6 cups (1.4 L) low-sodium chicken stock (or lamb stock)
- 1 cup (240 ml) water
- 3/4 cup (150 g) red lentils, rinsed
- 1 large Granny Smith apple, peeled and diced
- 1 bay leaf
- 1/2 cup (120 ml) heavy cream (or full-fat coconut milk)
- 1 tbsp fresh lemon juice
- Optional to serve: cooked basmati rice, chopped cilantro, plain yogurt, toasted almonds
Do This
- 1) Salt and pepper lamb; brown in oil in a Dutch oven (8–10 minutes). Remove.
- 2) Sauté onion, carrot, and celery in butter (8 minutes). Add garlic and ginger (1 minute).
- 3) Stir in spices + tomato paste; cook until fragrant (1–2 minutes).
- 4) Add stock, water, bay leaf, lentils, and lamb; simmer gently, covered, until lamb is tender (60–75 minutes).
- 5) Add diced apple; simmer uncovered until lentils are creamy and apples soften (10–12 minutes).
- 6) Stir in cream and lemon juice; adjust salt. Rest 10 minutes.
- 7) Serve hot (optionally over rice) with cilantro, yogurt, or toasted almonds.
Why You’ll Love This Recipe
- Comforting and complex: warm curry spices, tender lamb, and creamy lentils in every spoonful.
- Sweet-savory balance: apples gently melt into the soup for that classic mulligatawny vibe.
- Weeknight-friendly technique: mostly hands-off simmering with simple, familiar ingredients.
- Even better the next day: the flavors deepen and the texture turns extra silky.
Grocery List
- Produce: 1 large yellow onion, 2 medium carrots, 2 celery ribs, 4 garlic cloves, fresh ginger, 1 large Granny Smith apple, 1 lemon, cilantro (optional)
- Dairy: unsalted butter, heavy cream (or coconut milk), plain yogurt (optional)
- Meat: 1 1/2 lb boneless lamb shoulder
- Pantry: neutral oil, kosher salt, black pepper, curry powder, ground cumin, ground coriander, ground turmeric, garam masala, tomato paste, red lentils, low-sodium chicken stock (or lamb stock), bay leaf, basmati rice (optional), sliced almonds (optional)
Full Ingredients
Lamb and seasoning
- 1 1/2 lb (680 g) boneless lamb shoulder, trimmed and cut into 1-inch (2.5 cm) pieces
- 1 3/4 tsp kosher salt, divided (plus more to taste)
- 1/2 tsp freshly ground black pepper
- 2 tbsp neutral oil (avocado, grapeseed, or canola)
Soup base
- 1 tbsp unsalted butter
- 1 large yellow onion, diced (about 2 cups / 300 g)
- 2 medium carrots, diced (about 1 cup / 130 g)
- 2 celery ribs, diced (about 1 cup / 120 g)
- 4 garlic cloves, minced
- 1 tbsp fresh ginger, finely grated
- 2 tbsp tomato paste
Curry spice blend
- 2 tbsp mild curry powder
- 1 tsp ground cumin
- 1 tsp ground coriander
- 1/2 tsp ground turmeric
- 1 tsp garam masala
Liquids and simmer add-ins
- 6 cups (1.4 L) low-sodium chicken stock (or lamb stock)
- 1 cup (240 ml) water
- 1 bay leaf
- 3/4 cup (150 g) red lentils, rinsed well
- 1 large Granny Smith apple, peeled, cored, and diced (about 1 1/2 cups / 180 g)
Finish and serve
- 1/2 cup (120 ml) heavy cream (or full-fat coconut milk for a dairy-free option)
- 1 tbsp fresh lemon juice
- Optional: 3 cups cooked basmati rice (about 1 cup dry rice cooked separately)
- Optional garnish: 1/4 cup chopped cilantro, plain yogurt, toasted sliced almonds

Step-by-Step Instructions
Step 1: Prep the lamb and vegetables
Pat the lamb dry with paper towels (this helps it brown instead of steam). Season with 1 tsp kosher salt and the black pepper.
Dice the onion, carrots, and celery. Mince the garlic and grate the ginger. Peel, core, and dice the apple, then set it aside (adding it later keeps the flavor fresh and the texture tender).
Step 2: Brown the lamb for deeper flavor
Set a large Dutch oven or heavy pot over medium-high heat. Add the 2 tbsp oil. When the oil shimmers, add lamb in a single layer (work in 2 batches if needed so it browns properly).
Brown for 8–10 minutes total, turning occasionally, until you have good caramelized edges. Transfer browned lamb to a bowl and set aside.
Step 3: Sauté the aromatics until sweet and soft
Reduce heat to medium. Add the 1 tbsp butter to the pot. Stir in the onion, carrots, and celery with 1/2 tsp kosher salt. Cook, stirring often, until the vegetables soften and the onion looks translucent, about 8 minutes.
Add the garlic and ginger and cook just until fragrant, about 1 minute.
Step 4: Toast the spices and tomato paste
Add the curry powder, cumin, coriander, turmeric, and garam masala. Stir constantly for 30 seconds so the spices bloom in the fat.
Add the tomato paste and cook, stirring, for 1–2 minutes until it darkens slightly and starts to stick a bit to the bottom of the pot (that’s flavor).
Step 5: Simmer the lamb and lentils until tender
Pour in the 6 cups stock and 1 cup water, scraping up any browned bits from the bottom. Add the bay leaf, rinsed lentils, and the browned lamb (plus any juices in the bowl).
Bring to a boil over high heat, then immediately reduce to a gentle simmer (aim for about 190–200°F / 88–93°C).
Cover and simmer until the lamb is very tender and the lentils are starting to break down, about 60–75 minutes. Stir every 15 minutes to prevent sticking.
Step 6: Add apples and finish the soup texture
Stir in the diced apple. Simmer uncovered for 10–12 minutes, stirring occasionally, until the apples are tender and the soup looks slightly creamy from the lentils.
If you’d like a more traditional, velvety mulligatawny texture: use an immersion blender to blend about 2 cups of the soup right in the pot (or carefully ladle some into a blender), then stir it back in. Keep some lamb pieces intact for a hearty bite.
Step 7: Add cream and bright finishing notes
Turn heat to low. Stir in the 1/2 cup heavy cream and the 1 tbsp lemon juice. Taste and adjust with the remaining 1/4 tsp salt (and more if needed).
Let the soup rest off the heat for 10 minutes to settle and thicken slightly.
Step 8: Serve (with or without rice)
Ladle into warm bowls. For a classic Anglo-Indian serving style, spoon 1/2 cup cooked basmati rice into each bowl and ladle soup over it.
Finish with chopped cilantro, a small dollop of plain yogurt, and/or toasted sliced almonds if you like a bit of crunch.
Pro Tips
- Don’t rush the browning: those golden edges on the lamb add a roasted depth that makes the curry spices taste fuller.
- Control thickness easily: for thicker soup, simmer uncovered an extra 5–10 minutes; for thinner soup, add 1/2 cup extra stock or water.
- Blend just a portion: partially blending gives you a creamy body while keeping satisfying chunks of lamb and apple.
- Add apple near the end: it keeps the sweet-tart note bright instead of disappearing into the base.
- Use gentle heat after adding cream: keep it under a simmer to avoid splitting (low heat is perfect).
Variations
- Coconut mulligatawny: swap the heavy cream for 1/2 cup (120 ml) full-fat coconut milk and garnish with cilantro and toasted coconut flakes.
- Extra-veg version: add 1 cup (150 g) diced sweet potato with the lentils (increase simmer time by about 10 minutes if needed).
- Spicier, punchier finish: add 1/4–1/2 tsp cayenne with the spices and serve with extra lemon wedges.
Storage & Make-Ahead
Refrigerate: Cool completely, then store in an airtight container for up to 4 days. The soup will thicken as it sits; loosen with a splash of stock or water when reheating.
Freeze: Freeze (preferably before adding cream) for up to 3 months. Thaw overnight in the refrigerator, reheat gently to steaming hot, then stir in cream.
Make-ahead tip: The soup tastes even better after 12–24 hours. If serving with rice, store rice separately so it doesn’t soak up the broth.
Nutrition (per serving)
Approximate (based on 6 servings, without rice or optional garnishes): 520 calories, 32 g protein, 28 g fat, 34 g carbohydrates, 8 g fiber, 900 mg sodium.

