Home » Curries » Authentic Dal Makhani Recipe — Slow-Cooked & Creamy

Authentic Dal Makhani Recipe — Slow-Cooked & Creamy

Recipe Card

Luxuriously creamy dal makhani simmered low and slow with black urad dal, rajma, butter and cream. The iconic Punjabi dal, made truly restaurant-worthy at home.

Prep Time20 mins (+ overnight soaking)
Cook Time2 hrs
Total Time2 hrs 20 mins (+ soaking)
Servings6
Calories420 kcal
DifficultyMedium
CuisineNorth Indian
CourseMain Course

Ingredients

  • 200g (1 cup) whole black urad dal (sabut urad), picked and rinsed
  • 50g (1/4 cup) rajma (red kidney beans), picked and rinsed
  • 2 litres water, for cooking the dal (plus more for soaking)
  • 2 tbsp white butter (makhan) or unsalted butter, plus an extra knob for finishing
  • 2 tbsp ghee
  • 1 tbsp neutral oil
  • 1 tsp cumin seeds
  • 2–3 green chillies, slit lengthwise
  • 1 tbsp ginger-garlic paste
  • 2 medium onions (about 200g), very finely chopped
  • 3 medium ripe tomatoes (about 300g), pureed — or 200g ready tomato puree
  • 1 tsp Kashmiri red chilli powder (for colour; add hot chilli powder to taste for heat)
  • 1/2 tsp turmeric powder
  • 1 tsp coriander powder
  • 1 tsp salt, plus more to taste
  • 100ml (about 1/2 cup) fresh cream, plus 2 tbsp extra for swirling on top
  • 1 tsp kasuri methi (dried fenugreek leaves)
  • 1/2 tsp garam masala
  • 2 tbsp chopped fresh coriander leaves, to garnish

Instructions

  1. Soak the lentils overnight. Combine the rinsed urad dal and rajma in a large bowl and cover with plenty of cold water — at least 8–10 cm above the lentils, as they swell considerably. Leave to soak for 8–10 hours or overnight. In very hot weather, soak in the refrigerator. Proper soaking is non-negotiable: it shortens cooking dramatically and gives the even, creamy texture that defines this dish.
  2. Cook until completely tender. Drain the soaked lentils and transfer them to a pressure cooker with 2 litres of fresh water and 1 teaspoon of salt. Pressure cook on medium heat for 5–6 whistles (roughly 20–25 minutes), then let the pressure release naturally. The urad grains should crush effortlessly between your fingers and the rajma should be soft all the way through. If you are using the traditional method instead, simmer the soaked lentils in a heavy pot with the same amount of water for 2 to 2.5 hours, topping up with hot water as needed, until equally soft.
  3. Mash for body. Open the cooker and, while the dal is still hot, take a potato masher (or the back of a large ladle) and crush roughly one-third of the lentils against the side of the pot. You want a mix: some grains whole for texture, enough broken down to thicken the gravy naturally. This step is what separates a thin, brothy dal from the thick, spoon-coating makhani you are after — do not skip it.
  4. Build the masala base. In your heavy-bottomed pot, heat the ghee and oil together over medium heat. Add the cumin seeds and let them sizzle for 20–30 seconds until fragrant, then add the slit green chillies and finely chopped onions. Cook the onions patiently for 8–10 minutes, stirring often, until they turn a deep, even golden brown — pale onions will leave the gravy tasting raw and sweet in the wrong way. Stir in the ginger-garlic paste and cook for 2 minutes until the raw smell disappears.
  5. Cook the tomato puree properly. Pour in the tomato puree along with the Kashmiri red chilli powder, turmeric and coriander powder. Cook on medium-low heat for 10–12 minutes, stirring regularly, until the puree darkens, thickens, and you can see beads of fat separating around the edges of the masala. This bhunao stage is where the deep flavour is built; rushing it is the most common reason homemade dal makhani tastes flat.
  6. Combine and begin the slow simmer. Pour the mashed cooked dal, along with all its cooking liquid, into the masala pot and stir well to combine. Add the 2 tablespoons of butter. Bring to a gentle boil, then reduce the heat to the lowest possible flame. Cover with the lid slightly ajar and simmer for 45–60 minutes, stirring every 10 minutes and scraping the base so nothing sticks. The dal will darken, thicken and turn glossy — if it gets too thick, loosen it with a splash of hot water. This slow marriage of dal and masala is the heart of the recipe.
  7. Finish with cream and kasuri methi. Crush the kasuri methi between your palms directly over the pot and stir it in with the garam masala. Pour in the 100ml of fresh cream and stir gently until fully incorporated. Let the dal simmer very gently for 8–10 more minutes — barely bubbling — so the cream melds in without splitting. Taste and adjust the salt. Turn off the heat and dot the top with the extra knob of butter, letting it melt into golden pools.
  8. Rest, then serve. Let the dal rest, covered, for at least 15 minutes before serving — the flavours settle and the texture thickens slightly as it stands. Ladle into warm bowls, swirl over the extra cream in a spiral, scatter with chopped coriander, and serve immediately with hot tandoori rotis or naan.

Tip: Read through the full post below for step-by-step photos, pro tips, variations and FAQs before you start cooking.

The Story Behind Dal Makhani

Before it was the crown jewel of every North Indian restaurant menu, dal makhani was a humble village lentil. In undivided Punjab, families simmered sabut urad — whole black gram, skin and all — in heavy pots over slow fires through the night. The dal that emerged by morning was dark, thick and deeply comforting, eaten with coarse rotis by people who had all day to let a pot bubble. It was food of the soil: cheap, nourishing and patient.

Everything changed in 1947. When Partition forced millions across the new border, among the refugees who arrived in Delhi was Kundan Lal Gujral, a cook from Peshawar who had spent his working life around a blazing tandoor. In Delhi’s Daryaganj neighbourhood, he opened a small eatery called Moti Mahal. The tandoor was the heart of that kitchen — chickens roasted in it by day, and by night its dying embers kept pots of black dal simmering for hours. Gujral took the rustic maa di dal of his childhood and gave it the Moti Mahal treatment: a rich tomato gravy (tomatoes were still something of a novelty in Punjabi cooking then), a generous hand of white butter, and a finishing swirl of cream. The same kitchen would go on to create butter chicken, and the two dishes — born of the same tomato-butter logic — became inseparable legends of Delhi cuisine.

What makes dal makhani special is not a secret spice or a complicated technique. It is time. The urad dal’s tough black skins need hours to soften and surrender their starch; the rajma must melt into the background rather than sit as separate beans; the butter, cream and tomato need a long, lazy simmer to fuse into one glossy, mahogany-dark whole. In restaurants, the pot rarely leaves the flame — it simmers all day, getting better by the hour. At home, you recreate that magic with a pressure cooker to do the heavy lifting and then a patient, low-flame simmer that you must not rush. The reward is a dal so creamy it coats the spoon, with a gentle smokiness and a richness that no shortcut version can touch. Once you have tasted the real thing, made slowly in your own kitchen, the restaurant version becomes something you measure everything else against.

Why You’ll Love This Recipe

  • Genuinely restaurant-worthy: the long simmer, the mashing technique and the proper finishing give you that glossy, velvety texture you thought only dhabas could achieve.
  • Simple pantry ingredients: no exotic spices — just urad dal, rajma, tomatoes, butter, cream and everyday masalas.
  • Mostly hands-off: the pressure cooker and the slow simmer do the real work; your active time is under 30 minutes.
  • Feeds a crowd: one pot generously serves six, and it stretches beautifully with extra water when guests arrive unannounced.
  • Better the next day: like all great dals, the flavours deepen overnight, so it is a perfect make-ahead dish for parties.
  • Flexible method: full instructions for both the pressure-cooker shortcut and the traditional long-simmer pot, so you can cook it your way.

Key Ingredients Explained

The soul of this dish is whole black urad dal (sabut urad) — the small, oval lentil with its black skin intact. That skin is everything: it gives dal makhani its characteristic dark colour and its earthy, almost meaty depth. Do not substitute split urad or the white dhuli variety; you will get a fine dal, but it will not be dal makhani. Buy dal that looks fresh and glossy-black rather than dusty or faded, and always pick through it for tiny stones before soaking.

Rajma plays a supporting role, and the ratio matters. I use one part rajma to four parts urad dal by weight (about 50g rajma to 200g urad). The kidney beans add body and a subtle sweetness, but too many will turn the dal starchy and reddish instead of dark and silky. Soak them together with the urad overnight — they cook in the same time.

Tomato puree gives the dish its gentle tang and that signature orange-red glow under the cream. Fresh puree made from ripe tomatoes tastes brighter, but a good-quality canned puree or passata works well in winter. The key technique point: cook the puree until the fat visibly separates at the edges of the pan. That single step removes every trace of raw tomato sharpness.

White butter (safed makhan) is the traditional fat, churned fresh in Punjabi homes, with a clean milky flavour. If you cannot find it, use good unsalted butter — never salted, since you want full control of seasoning. Butter goes in twice: a little in the masala base and a generous knob stirred in at the end for that unmistakable makhani gloss.

Fresh cream (malai) finishes the dish. Add it off the fiercest heat and never boil the dal hard after it goes in, or the cream can split. A final swirl on top when serving is not just decoration — it is the promise of what is inside.

Kasuri methi (dried fenugreek leaves) is the quiet hero. Crushed between your palms and stirred in during the last minutes, it lends the smoky-sweet aroma that instantly says “restaurant dal”. And for the optional dhungar finish — the dhaba-style smoke — you will need one small piece of natural charcoal, a teaspoon of ghee, and a steel bowl that fits inside your pot. It is a five-minute step that adds remarkable depth.

Authentic Dal Makhani Recipe — Slow-Cooked & Creamy — step photo
A bowl of glossy, creamy dal makhani finished with a swirl of cream and butter.

Equipment You’ll Need

  • Heavy-bottomed deep pot or handi (at least 4 litres) — essential for the long, slow simmer without scorching; a Dutch oven works beautifully.
  • Pressure cooker (5–6 litres) — the practical shortcut for cooking the soaked dal and rajma until completely tender; skip it only if you are committed to the traditional 2–3 hour open-pot simmer.
  • Potato masher or the back of a ladle — for crushing a portion of the cooked dal to build that thick, creamy body.
  • Long wooden spoon or sturdy spatula — for frequent stirring during the final simmer so nothing catches at the base.
  • Small steel bowl and tongs — only if you plan the optional dhungar smoke finish.

  • 200g (1 cup) whole black urad dal (sabut urad), picked and rinsed
  • 50g (1/4 cup) rajma (red kidney beans), picked and rinsed
  • 2 litres water, for cooking the dal (plus more for soaking)
  • 2 tbsp white butter (makhan) or unsalted butter, plus an extra knob for finishing
  • 2 tbsp ghee
  • 1 tbsp neutral oil
  • 1 tsp cumin seeds
  • 2–3 green chillies, slit lengthwise
  • 1 tbsp ginger-garlic paste
  • 2 medium onions (about 200g), very finely chopped
  • 3 medium ripe tomatoes (about 300g), pureed — or 200g ready tomato puree
  • 1 tsp Kashmiri red chilli powder (for colour; add hot chilli powder to taste for heat)
  • 1/2 tsp turmeric powder
  • 1 tsp coriander powder
  • 1 tsp salt, plus more to taste
  • 100ml (about 1/2 cup) fresh cream, plus 2 tbsp extra for swirling on top
  • 1 tsp kasuri methi (dried fenugreek leaves)
  • 1/2 tsp garam masala
  • 2 tbsp chopped fresh coriander leaves, to garnish


  1. Soak the lentils overnight. Combine the rinsed urad dal and rajma in a large bowl and cover with plenty of cold water — at least 8–10 cm above the lentils, as they swell considerably. Leave to soak for 8–10 hours or overnight. In very hot weather, soak in the refrigerator. Proper soaking is non-negotiable: it shortens cooking dramatically and gives the even, creamy texture that defines this dish.
  2. Cook until completely tender. Drain the soaked lentils and transfer them to a pressure cooker with 2 litres of fresh water and 1 teaspoon of salt. Pressure cook on medium heat for 5–6 whistles (roughly 20–25 minutes), then let the pressure release naturally. The urad grains should crush effortlessly between your fingers and the rajma should be soft all the way through. If you are using the traditional method instead, simmer the soaked lentils in a heavy pot with the same amount of water for 2 to 2.5 hours, topping up with hot water as needed, until equally soft.
  3. Mash for body. Open the cooker and, while the dal is still hot, take a potato masher (or the back of a large ladle) and crush roughly one-third of the lentils against the side of the pot. You want a mix: some grains whole for texture, enough broken down to thicken the gravy naturally. This step is what separates a thin, brothy dal from the thick, spoon-coating makhani you are after — do not skip it.
  4. Build the masala base. In your heavy-bottomed pot, heat the ghee and oil together over medium heat. Add the cumin seeds and let them sizzle for 20–30 seconds until fragrant, then add the slit green chillies and finely chopped onions. Cook the onions patiently for 8–10 minutes, stirring often, until they turn a deep, even golden brown — pale onions will leave the gravy tasting raw and sweet in the wrong way. Stir in the ginger-garlic paste and cook for 2 minutes until the raw smell disappears.
  5. Cook the tomato puree properly. Pour in the tomato puree along with the Kashmiri red chilli powder, turmeric and coriander powder. Cook on medium-low heat for 10–12 minutes, stirring regularly, until the puree darkens, thickens, and you can see beads of fat separating around the edges of the masala. This bhunao stage is where the deep flavour is built; rushing it is the most common reason homemade dal makhani tastes flat.
  6. Combine and begin the slow simmer. Pour the mashed cooked dal, along with all its cooking liquid, into the masala pot and stir well to combine. Add the 2 tablespoons of butter. Bring to a gentle boil, then reduce the heat to the lowest possible flame. Cover with the lid slightly ajar and simmer for 45–60 minutes, stirring every 10 minutes and scraping the base so nothing sticks. The dal will darken, thicken and turn glossy — if it gets too thick, loosen it with a splash of hot water. This slow marriage of dal and masala is the heart of the recipe.
  7. Finish with cream and kasuri methi. Crush the kasuri methi between your palms directly over the pot and stir it in with the garam masala. Pour in the 100ml of fresh cream and stir gently until fully incorporated. Let the dal simmer very gently for 8–10 more minutes — barely bubbling — so the cream melds in without splitting. Taste and adjust the salt. Turn off the heat and dot the top with the extra knob of butter, letting it melt into golden pools.
  8. Rest, then serve. Let the dal rest, covered, for at least 15 minutes before serving — the flavours settle and the texture thickens slightly as it stands. Ladle into warm bowls, swirl over the extra cream in a spiral, scatter with chopped coriander, and serve immediately with hot tandoori rotis or naan.

Pro Tips for Perfect Results

  • Patience is the main ingredient. The 45–60 minute low simmer after combining dal and masala cannot be hurried. If you are short on time, make the dal a day ahead — the overnight rest in the fridge deepens the flavour even more than an extra hour on the stove.
  • Mash, don’t blend. A blender turns the dal gluey and uniform. Mashing just a portion by hand keeps whole grains for texture while the crushed ones release starch for natural thickness.
  • Salt in two stages. A little salt in the pressure cooker helps the lentils cook evenly; the final seasoning happens at the end, after the cream goes in, when you can judge the true flavour.
  • Keep the flame truly low. After the cream is added, the dal should barely tremble, never boil vigorously. High heat is what splits cream and dulls the fresh dairy flavour.
  • It thickens as it stands. Dal makhani continues to thicken off the heat, so finish it slightly looser than your ideal serving consistency — especially if you are reheating it later.
  • Reheating makes it better. Warm it gently on low heat with a splash of milk or water, stirring often. Many Punjabi families insist day-two dal makhani beats day one, and they are right.
  • Freeze the base, finish fresh. If you like planning ahead, simmer the dal through step 6, cool and freeze it for up to a month. Thaw, reheat, and add the cream, kasuri methi and butter fresh — nobody will guess it was frozen.

Variations to Try

Lighter weeknight version: cut the butter to 1 tablespoon, use 60ml of cream (or replace half with milk), and skip the final butter knob. You lose some decadence but keep all the slow-cooked flavour — still miles ahead of any restaurant “light” option. A spoon of hung curd whisked in at the end adds creaminess with less fat.

Dhaba style: dhabas along the Grand Trunk Road serve a bolder, smokier dal. Double the ginger (add juliennes at the end), be generous with the green chillies, finish with a tadka of ghee, cumin and dried red chillies poured sizzling over the top, and serve with thick tandoori rotis and raw onion rings.

Smoky dhungar method: for that unmistakable tandoor-dhaba aroma, heat a small piece of natural charcoal directly over a gas flame until red-hot and smoking. Place a small steel bowl in the centre of the finished dal, set the charcoal in it, drizzle a teaspoon of ghee over the coal, and immediately clamp the lid on. Let it smoke for 5 minutes, then remove the bowl and coal. The dal picks up a haunting wood-smoke note that fools everyone into thinking it cooked over coals all night.

Dal makhani handi: for parties, transfer the finished dal to a small handi, pour over an extra tadka of butter, cream and a pinch of Kashmiri chilli, and serve bubbling at the table — dramatic, and it keeps the dal hot through second helpings.

Authentic Dal Makhani Recipe — Slow-Cooked & Creamy — cooking photo
Whole black urad dal and rajma soaking overnight — the first step to authentic dal makhani.

Serving Suggestions

Dal makhani demands bread for scooping. Tandoori roti, butter naan or lachha paratha are the classic partners — their charred edges and chew are the perfect contrast to the silky dal. If you prefer rice, steamed basmati or jeera rice lets the dal shine as a gravy. On the side, keep it simple and Punjabi: thick slices of raw onion, lemon wedges, and a few green chillies for those who like heat. A tall glass of sweet or salted lassi alongside turns dinner into a feast, and a small kachumber salad of onion, tomato and cucumber cuts through the richness. For a full celebratory spread, pair it with jeera rice, a paneer starter and a simple moong dal halwa or gulab jamun for dessert.

Storage and Reheating

Refrigerate cooled dal makhani in an airtight container for up to 4 days — the flavour genuinely improves by day two as the spices settle into the lentils. For longer storage, freeze in portion-sized containers for up to 3 months; thaw overnight in the fridge before reheating. To reheat, warm gently in a heavy pan over low heat, stirring frequently and loosening with a splash of hot water or milk until it returns to a silky consistency. Avoid the microwave if you can — it heats unevenly and can make the cream separate. If the reheated dal tastes a little flat, revive it with a fresh pinch of kasuri methi, a small knob of butter and a light swirl of cream just before serving.

Frequently Asked Questions

Can I make dal makhani without a pressure cooker?

Absolutely. Soak the urad dal and rajma overnight as usual, then simmer them in a heavy-bottomed pot with plenty of water for 2 to 2.5 hours, topping up with hot water whenever the level drops. The lentils must be completely soft — crushable between your fingers — before you proceed. Everything after that is identical. It takes longer, but many purists swear the open-pot simmer gives an even silkier result.

Why is my dal makhani not creamy or glossy?

Three usual culprits: the dal was undercooked before mashing (hard grains never release their starch), the mashing step was skipped, or the final simmer was too short. Also, be honest about the butter and cream — this is not a low-fat dish, and skimping on both will always show. Give it the full 45–60 minute low simmer and you will see the gloss develop.

Can I make dal makhani in advance for a party?

It is one of the best make-ahead curries there is. Cook it fully a day before, cool and refrigerate. Reheat gently with a splash of water or milk, then finish with a fresh swirl of cream, a knob of butter and a pinch of crushed kasuri methi just before serving. Your guests will taste a dal that is deeper and more rounded than anything made in a hurry.

What is the difference between dal makhani and dal tadka?

Dal tadka is made from yellow lentils (usually arhar/toor dal), cooked quickly and finished with a sizzling tempering of ghee, cumin, garlic and red chillies — it is light, bright and ready in 30 minutes. Dal makhani uses whole black urad dal and rajma, cooks for hours, and gets its richness from butter and cream rather than a tadka. They are entirely different dishes that happen to share the word “dal”.

Is dal makhani gluten-free? Can I make it vegan?

The dal itself is naturally gluten-free — just check that your garam masala and hing (if used) are certified gluten-free, as some commercial blends contain wheat flour. For a vegan version, replace the butter with a neutral oil or vegan butter and the cream with cashew cream (soaked cashews blended smooth) or coconut cream. The result is remarkably close to the original.

My cream split when I added it. What went wrong?

The dal was almost certainly boiling too hard, or the cream was added fridge-cold to a very hot pot. Always lower the heat to the gentlest simmer before adding cream, and let the cream come to room temperature first. If it has already split slightly, an extra vigorous stir and a spoonful of fresh cream off the heat will usually bring it back together.

There is a reason this dal has travelled from Punjabi village hearths to Delhi’s grandest restaurants to kitchens all over the world: it is proof that the simplest ingredients, given time and care, become something luxurious. So soak your dal tonight, clear an unhurried afternoon, and let the pot do its slow magic. Serve it steaming with hot rotis, watch the butter melt into golden pools on top, and enjoy every spoonful — you have just made one of India’s greatest dishes, entirely from scratch.

Ananya

Hi, I'm Ananya! I'm a home cook from Mumbai who believes the best food is made slowly and shared generously. I test every recipe in my own kitchen — usually with my mother's old kadai and a strong cup of masala chai nearby — so you can cook with total confidence. When I'm not developing recipes, I'm out hunting down street food or trying to perfect my dosa flip.

Leave a Reply — tried this recipe?

Your email address will not be published. Required fields are marked *