Quick Recipe Version (TL;DR)
Quick Ingredients
- 400 g (14 oz) paneer, cut into 2.5 cm (1 inch) cubes
- 1/3 cup (50 g) raw cashews + 2 tbsp (18 g) blanched almonds
- 1/2 cup (120 g) whole-milk yogurt, room temp
- 1 large onion (200 g), sliced; 1 small tomato (100 g), chopped
- 2 tsp ginger-garlic paste; 1 small green chili, slit (optional)
- 2 tbsp ghee + 1 tbsp neutral oil
- Whole spices: 2 green cardamom pods, 1 bay leaf, 2.5 cm (1 inch) cinnamon stick
- Ground spices: 1/2 tsp coriander, 1/2 tsp cumin, 1/4 tsp turmeric, 1/2 tsp Kashmiri chili, 1/4 tsp garam masala
- 1/8 tsp saffron threads soaked in 3 tbsp (45 ml) warm milk
- 1 tsp sugar; 1 tsp crushed kasuri methi; 1/2 tsp rose water; 1 1/4 tsp kosher salt
- 1 cup (240 ml) hot water; 3 tbsp (45 ml) heavy cream
Do This
- 1. Soak cashews and almonds in hot water 15 minutes; peel almond skins. Steep saffron in warm milk 10 minutes. Soak paneer in hot salted water 5 minutes, then drain.
- 2. Warm 1 tbsp ghee + 1 tbsp oil over medium heat. Add cardamom, bay leaf, cinnamon. Add onion; cook 6–8 minutes until translucent. Stir in ginger-garlic (1 minute), green chili, tomato (3–4 minutes).
- 3. Add ground coriander, cumin, turmeric, Kashmiri chili; cook 30 seconds. Transfer to blender with drained nuts + 1/2 cup water; blend ultra-smooth. Strain if you want a silkier sauce.
- 4. Return 1 tbsp ghee to pan; pour in puree. Cook on medium-low 6–8 minutes until glossy. Add 1/2–3/4 cup hot water to reach a creamy pourable consistency; gentle simmer (93–96°C / 200–205°F).
- 5. Temper yogurt with hot gravy, then stir into pan on low. Add saffron milk, sugar, salt, and kasuri methi; cook 3–4 minutes below a simmer (90–95°C / 195–203°F).
- 6. Add paneer; simmer 3–4 minutes. Finish with cream, rose water, garam masala. Rest covered 5 minutes; garnish and serve with naan or laccha paratha.
Why You’ll Love This Recipe
- Truly regal: a cashew–almond–yogurt gravy perfumed with cardamom and saffron.
- Restaurant-level silkiness made simple with a home blender and a quick strain.
- Balanced flavor: gentle sweetness, soft heat, and warm spice—perfect for naan or laccha paratha.
- Foolproof technique to prevent yogurt from curdling and keep paneer tender.
Grocery List
- Produce: 1 large onion, 1 small tomato, 1 small green chili (optional), fresh cilantro (for garnish)
- Dairy: Paneer (400 g), whole-milk yogurt, heavy cream, milk (for saffron)
- Pantry: Raw cashews, almonds, ghee, neutral oil, saffron threads, kasuri methi (dried fenugreek), rose water, sugar, kosher salt, ginger-garlic paste, green cardamom pods, bay leaf, cinnamon stick, ground coriander, ground cumin, turmeric, Kashmiri chili powder, garam masala
Full Ingredients
Paneer
- 400 g (14 oz) paneer, cut into 2.5 cm (1 inch) cubes
- 1/2 tsp kosher salt (for the hot water soak)
Nut and Saffron Base
- 1/3 cup (50 g) raw cashews
- 2 tbsp (18 g) blanched almonds
- 1/8 tsp saffron threads (about 25 strands)
- 3 tbsp (45 ml) warm whole milk (for saffron)
Aromatics and Whole Spices
- 2 tbsp ghee, divided
- 1 tbsp neutral oil (sunflower, canola, or grapeseed)
- 2 green cardamom pods, lightly bruised
- 1 bay leaf
- 1 small cinnamon stick (2.5 cm / 1 inch)
- 1 large onion (200 g), thinly sliced
- 1 small tomato (100 g), chopped
- 2 tsp ginger-garlic paste
- 1 small green chili, slit lengthwise (optional)
Ground Spices
- 1/2 tsp ground coriander
- 1/2 tsp ground cumin
- 1/4 tsp ground turmeric
- 1/2 tsp Kashmiri chili powder (mild, for color)
Dairy, Liquids, and Seasoning
- 1/2 cup (120 g) plain whole-milk yogurt, room temperature
- 1 cup (240 ml) hot water, plus more as needed
- 1 tsp sugar
- 1 1/4 tsp kosher salt, or to taste
- 1 tsp crushed kasuri methi
- 3 tbsp (45 ml) heavy cream
- 1/2 tsp rose water
- 1/4 tsp garam masala

Step-by-Step Instructions
Step 1: Soak nuts, bloom saffron, and soften paneer
Place cashews and almonds in a bowl and cover with very hot water; soak 15 minutes. Drain, then slip the almond skins off and discard. In a small bowl, soak saffron threads in warm milk for at least 10 minutes. To keep paneer tender, place the cubes in a bowl, cover with hot tap water and 1/2 tsp salt, soak 5 minutes, then drain and set aside.
Step 2: Sweat aromatics with whole spices
Heat 1 tbsp ghee and 1 tbsp oil in a wide saucepan over medium heat. Add cardamom, bay leaf, and cinnamon; sizzle 30 seconds until fragrant. Add sliced onion and cook 6–8 minutes, stirring often, until translucent and soft but not browned. Stir in ginger-garlic paste and green chili; cook 1 minute to remove the raw smell. Add the chopped tomato and cook 3–4 minutes until the tomato softens and the mixture looks glossy.
Step 3: Add ground spices and blend to a silky paste
Sprinkle in ground coriander, cumin, turmeric, and Kashmiri chili. Cook 30 seconds, stirring, to bloom the spices. Transfer the mixture to a blender with the soaked nuts and 1/2 cup (120 ml) water. Blend on high 60–90 seconds until ultra-smooth and creamy. For the smoothest “shahi” finish, pass through a fine-mesh sieve back into a bowl.
Step 4: Cook down the gravy base
Return the pan to medium-low heat and add the remaining 1 tbsp ghee. Pour in the blended paste and cook 6–8 minutes, stirring frequently, until thick, glossy, and the ghee starts to release at the edges. Gradually whisk in 1/2–3/4 cup (120–180 ml) hot water until the sauce is creamy and pourable. Keep at a gentle simmer, about 93–96°C (200–205°F).
Step 5: Temper and add yogurt without curdling
In a small bowl, whisk the room-temperature yogurt. Ladle in 2–3 tbsp of the hot gravy and whisk to temper; repeat once more. Reduce the pan heat to low (aim to stay below a bare simmer, 90–95°C / 195–203°F), then stir the tempered yogurt into the sauce. Add the saffron milk, sugar, salt, and kasuri methi. Cook 3–4 minutes, stirring gently; do not let it boil.
Step 6: Add paneer and finish
Slide in the paneer cubes and simmer gently for 3–4 minutes so they warm through and absorb flavor. Stir in 2 tbsp of the cream (reserve 1 tbsp for garnish) and the rose water. Sprinkle garam masala, remove the bay leaf and cinnamon if you prefer, and turn off the heat.
Step 7: Rest, garnish, and serve
Cover and rest 5 minutes to let the flavors settle. Swirl over the remaining 1 tbsp cream. Garnish with a pinch of crushed kasuri methi, slivered almonds, a few saffron strands, and chopped cilantro. Serve hot with naan or laccha paratha.
Pro Tips
- Room-temperature yogurt and gentle heat are key—temper the yogurt and avoid boiling to prevent curdling.
- Blend thoroughly and strain the sauce for that restaurant-level, velvety texture.
- Soaking paneer in hot salted water keeps it plush and prevents rubbery edges.
- Kashmiri chili powder adds a beautiful hue without much heat; adjust to taste.
- Use a wide pan to encourage the gravy to cook evenly and release ghee for deeper flavor.
Variations
- No-onion, no-garlic: Skip onion and ginger-garlic; increase cashews to 2/3 cup (80 g) and use a pinch more saffron for aroma.
- Tomato-free ivory gravy: Omit tomato; add 2–3 tbsp extra yogurt and a splash more cream for a paler, ultra-rich sauce.
- Vegan: Use firm tofu, coconut yogurt (unsweetened), and coconut cream; replace ghee with oil. Flavor stays royal, texture stays lush.
Storage & Make-Ahead
Refrigerate leftovers in an airtight container up to 3 days. Reheat gently over low heat with a splash of hot water or warm milk; do not boil. The sauce base (through the end of Step 4, before adding yogurt) can be made 2 days ahead and refrigerated, or frozen up to 2 months. Thaw, rewarm, then proceed with Steps 5–7. Avoid freezing the finished dish (yogurt-based sauces can split upon thawing).
Nutrition (per serving)
Approximate: 570 kcal; 45 g fat; 13 g carbs; 17 g protein; 2 g fiber; 540 mg sodium. Values will vary with brands and exact ingredients.


Leave a Reply