Skip to content
Zaffaron

Dal Makhani (दाल मखनी) — Indian Slow-Cooked Black Lentils with Cream and Butter

Dal Makhani is a beloved North Indian Punjabi dish of slow-cooked whole black lentils and kidney beans simmered until velvety. Finished with butter and cream, it’s a celebratory restaurant classic often served with naan or jeera rice.

By Zaffaron Kitchen· Published April 4, 2026 Verified Recipe
Vegetarian Gluten-Free Nut-Free Halal
Contains: dairy
130 min total Prep 20m · Cook 110m 6 servings 430 cal
↓ Jump to Recipe
Dal Makhani — Indian Slow-Cooked Black Lentils with Cream and Butter - authentic indian recipe

Printable Recipe Card

Servings: 6 · Total: 130 min · Difficulty: medium

Ingredients (quick list)

  • 250 g whole black lentils (urad dal) (picked and rinsed)
  • 60 g kidney beans (rajma) (optional but traditional; picked and rinsed)
  • 1500 ml water (plus more as needed)
  • 10 g fine salt (about 1 3/4 tsp)
  • 60 g unsalted butter (divided)
  • 15 ml neutral oil (about 1 tbsp)
  • 2 tsp cumin seeds
  • 150 g onion (finely chopped)
  • 30 g ginger-garlic paste (about 2 tbsp)
  • 300 g tomato puree (smooth, from ripe tomatoes or canned passata)
  • 2 tsp Kashmiri chili powder (for color and mild heat)
  • 2 tsp ground coriander

+ 5 more in the full ingredients section below.

Steps (summary)

  1. Rinse the whole black lentils and kidney beans in several changes of water until it runs mostly clear. Soak them in plenty of w…
  2. Add the soaked lentils and beans to a pot with 1500 ml water and 6 g of the salt. Bring to a boil, then reduce to a steady simm…
  3. Once the lentils are fully cooked, lightly mash about 1 cup of them against the side of the pot to thicken the base. Keep the p…
  4. In a separate pan, heat the oil with 30 g of the butter over medium heat until the butter melts and begins to foam. Add cumin s…
  5. Stir in the ginger-garlic paste and cook for 60–90 seconds until the raw aroma disappears. Add the tomato puree, Kashmiri chili…
  6. Scrape the cooked masala into the pot of lentils and stir thoroughly so the color becomes uniform. Simmer gently for 25–30 minu…

+ 2 more steps in the full instructions section below.

Cultural Background

A cornerstone of Punjabi dhaba and celebratory home cooking, Dal Makhani showcases the region’s love for slow-simmered legumes enriched with dairy. It’s often served at gatherings and festivals as a luxurious, comforting centerpiece with bread or rice.

savorytomato-tangywarm-spicedvelvety lentilsthick creamy gravybuttery richnesstoasted cuminfenugreek warmth🌶 mild

Equipment

large heavy-bottom pot or Dutch ovenmedium skillet for tadkawooden spoon or spatulameasuring cups and spoonsfine-mesh strainer

💡 Tips

  • For the signature velvety texture, simmer the finished dal on very low heat for a full 30 minutes and stir every 3–4 minutes to prevent scorching.
  • Crushing the kasuri methi between your palms before adding releases more aroma and gives a restaurant-style finish.
  • If the dal thickens too much while resting, loosen it with 50–100 ml hot water and simmer 2 minutes before serving.

⚠️ Common Mistakes

  • ❌ Stopping the simmer too early so the dal tastes flat and looks watery.

    ✅ Fix: After adding the masala, simmer at least 25–30 minutes and mash a portion of lentils to build body and sheen.

  • ❌ Burning the masala or scorching the bottom of the pot.

    ✅ Fix: Keep heat medium for the masala and low for the dal, stir frequently, and add hot water in 50–100 ml increments when it thickens.

  • ❌ Adding cream at high heat so it splits.

    ✅ Fix: Lower the heat before adding cream and simmer only 2–3 minutes, never letting it boil hard.

🧊 How to Store

Cool within 1 hour, then refrigerate in an airtight container for up to 4 days. Reheat gently on the stove with 60–120 ml water, stirring often, and simmer 5–8 minutes; add 15 ml cream at the end to refresh the finish.

📅 Make Ahead

Soak the lentils and beans up to 12 hours ahead and refrigerate after draining. You can also cook the lentils a day ahead; the dal tastes better the next day, then finish with butter, kasuri methi, and cream just before serving.

🍽️ Pairs Well With

  • Butter naan
  • tandoori roti
  • jeera rice
  • pickled onions
  • lemon wedges
  • cucumber salad.

Regional Variations

  • Restaurant-style: finish with an extra 20 g butter and 30 ml cream, then rest 20 minutes for deeper flavor.
  • Dhaba-style: slightly higher chili (3 tsp Kashmiri chili powder) and longer simmer for a darker, smokier masala.
  • No-onion version: omit onion and increase tomato puree to 350 g; cook longer to develop sweetness and depth.
everyday holiday party ramadan
#classic#family-style#one-pot#gluten-free

Ingredients

  • 250 gwhole black lentils (urad dal) (picked and rinsed)
  • 60 gkidney beans (rajma) (optional but traditional; picked and rinsed)
  • 1500 mlwater (plus more as needed)
  • 10 gfine salt (about 1 3/4 tsp)
  • 60 gunsalted butter (divided)
  • 15 mlneutral oil (about 1 tbsp)
  • 2 tspcumin seeds
  • 150 gonion (finely chopped)
  • 30 gginger-garlic paste (about 2 tbsp)
  • 300 gtomato puree (smooth, from ripe tomatoes or canned passata)
  • 2 tspKashmiri chili powder (for color and mild heat)
  • 2 tspground coriander
  • 1 tspgaram masala
  • 2 tspkasuri methi (dried fenugreek leaves) (crushed between palms)
  • 120 mlheavy cream (about 1/2 cup)
  • 10 gfresh cilantro (finely chopped)
  • 10 gjulienned ginger (optional but classic)

🔄 Substitutions

  • heavy cream→ cooking cream (18–20% fat), 150 ml
  • kidney beans (rajma)→ more whole black lentils (urad dal), 60 g
  • tomato puree→ canned crushed tomatoes, 320 g

Instructions

  1. 1

    Rinse the whole black lentils and kidney beans in several changes of water until it runs mostly clear. Soak them in plenty of water for 8 hours, then drain and rinse again to remove excess starch and improve texture.

  2. 2

    Add the soaked lentils and beans to a pot with 1500 ml water and 6 g of the salt. Bring to a boil, then reduce to a steady simmer and cook until the lentils are very soft and the beans are tender, about 70–85 minutes, stirring every 10 minutes to prevent sticking.

  3. 3

    Once the lentils are fully cooked, lightly mash about 1 cup of them against the side of the pot to thicken the base. Keep the pot on low heat and add 200–300 ml hot water if the mixture becomes too thick, aiming for a slow, bubbling simmer.

  4. 4

    In a separate pan, heat the oil with 30 g of the butter over medium heat until the butter melts and begins to foam. Add cumin seeds and let them sizzle for 20–30 seconds, then add the chopped onion and cook for 8–10 minutes until deep golden.

  5. 5

    Stir in the ginger-garlic paste and cook for 60–90 seconds until the raw aroma disappears. Add the tomato puree, Kashmiri chili powder, and ground coriander, then cook 10–12 minutes, stirring often, until the masala darkens and the fat begins to separate at the edges.

  6. 6

    Scrape the cooked masala into the pot of lentils and stir thoroughly so the color becomes uniform. Simmer gently for 25–30 minutes, stirring frequently and adding 100–200 ml water as needed, until the dal looks glossy and thick with a creamy, cohesive body.

  7. 7

    Add the remaining 30 g butter, garam masala, and crushed kasuri methi, then simmer 3 minutes to bloom the aromas. Pour in the heavy cream and cook 2–3 minutes more on low heat so it integrates without splitting.

  8. 8

    Turn off the heat and rest the dal for 10 minutes so it thickens and the flavors round out. Finish with cilantro and optional julienned ginger, then serve hot with your chosen breads or rice.

🪪 Recipe Passport

Origin: Indian Cuisine
Researched by: Zaffaron Kitchen
Published: April 4, 2026

Cultural Background

A cornerstone of Punjabi dhaba and celebratory home cooking, Dal Makhani showcases the region’s love for slow-simmered legumes enriched with dairy. It’s often served at gatherings and festivals as a luxurious, comforting centerpiece with bread or rice.

Regional Variations

Restaurant-style: finish with an extra 20 g butter and 30 ml cream, then rest 20 minutes for deeper flavor.
Dhaba-style: slightly higher chili (3 tsp Kashmiri chili powder) and longer simmer for a darker, smokier masala.
No-onion version: omit onion and increase tomato puree to 350 g; cook longer to develop sweetness and depth.

Researched from multiple sources and validated by the Zaffaron editorial team. Every recipe is tested for accuracy, measurements, and cultural authenticity.

Share:

Nutrition per serving

430
Calories
17g
Protein
20g
Fat
46g
Carbs
14g
Fiber
650mg
Sodium

Pairs well with

If you enjoyed this recipe, here are a few related Zaffaron recipes to try next.

Does your family make this differently?

Every family has their own version. Maybe your grandmother adds a secret ingredient, or your aunt has a completely different technique. Preserve your family's version — with their name on it, forever.

You Might Also Like

Reviews

—
Rated 0.0 out of 5 stars
0 reviews

Cooked this recipe?

Tap the stars to rate it — that's all it takes. A few words are welcome but optional.

Please sign in to rate this recipe.
Rated 0.0 out of 5 stars

No ratings yet. Cooked this one? Be the first to rate it — it takes one tap.