Indian Dal Makhani with Black Lentils
Dal makhani is whole black lentils with their skins (urad dal) plus red kidney beans, soaked overnight and boiled until they give in, then simmered for two hours over very low heat with tomatoes, butter and cream. The velvety texture comes from long cooking, not blending.
- Prep
- 20 min
- Cook
- 180 min
- Total
- 200 min
- Calories
- 340
Photo: Barry Pousman from New York, NY — CC BY 2.0 · Wikimedia Commons
Dal makhani is a dish of patience. There is no shortcut to its creamy texture — it comes from hours over a low flame that let the lentil starch release into the liquid. The result is worth the wait.
Method
-
1
Soaking
Wash the black lentils and beans well, and soak them in plenty of water for at least 8 hours or overnight. Soaking isn’t optional here — whole black lentils are very hard, and without it they stay firm even after hours of boiling.
-
2
Boiling
Boil the lentils and beans in fresh water with salt and a pinch of turmeric: 1½–2 hours in a regular pot, or 25–30 minutes in a pressure cooker. They must reach the point where a lentil crushes between two fingers with no resistance at all.
-
3
The flavour base
In a heavy pot, melt 50 g butter and fry the cumin until it crackles. Add the onion and cook for 10 minutes until golden, then the ginger-garlic paste for 2 minutes until the raw smell goes.
-
4
Tomatoes and spices
Add the puréed tomatoes, chilli powder, turmeric and salt, and cook for 15–20 minutes until the fat rises to the surface — in Indian cooking that sign means the tomatoes are cooked and their water is gone.
-
5
The long simmer
Pour the boiled lentils and their water into the tomato mixture and stir. Mash a little against the side of the pot with the back of the ladle to release starch. Leave it on your lowest heat for two hours, stirring every 15 minutes and adding a splash of hot water if it gets too thick.
-
6
Cream and finishing
Add the remaining butter and the cream, the garam masala and the fenugreek rubbed between your palms. Stir and cook for 10 minutes more. Season with salt at the end — the long cooking concentrates it.
-
7
Smoking (optional)
Heat a piece of charcoal over a flame until red, put it in a small metal cup inside the pot, pour half a teaspoon of ghee over it and cover the pot immediately for 3 minutes. The smoke gives the dish the flavour of a tandoor.
Cooked it? Rate it
Your rating tells the next cook whether this recipe is worth their time.
✓ Thanks — your rating is in.
Tips that actually matter
- Soaking overnight is essential — whole black lentils are hard and won’t cook without it.
- Wait until the fat rises over the tomatoes before adding the lentils.
- A little mashing against the side of the pot releases starch — that is the secret of the velvety texture.
- Rub the dried fenugreek between your hands before adding it to release its aromatic oil.
- It tastes better the next day — the flavours come together even more.
People also ask
Can I use ordinary lentils?
Then it won’t be dal makhani. Whole black lentils with skins (urad dal) give the sticky texture and earthy taste. Yellow lentils break down quickly and you end up with lentil soup, not dal makhani.
Does it really need two hours of simmering?
That is what makes the difference. One hour gives you a good dish; two hours give you the real creamy texture. In a pressure cooker, boil quickly, but the simmer afterwards must be uncovered and slow.
Can I make it without cream?
Yes — add a little more butter and mash a bit more, and the starch will give a naturally creamy texture. Or use soaked, blended cashews as a plant-based alternative with almost the same richness.
What do I serve it with?
White basmati rice or buttered naan, or jeera rice (rice with cumin). Top it with a swirl of cream and some fresh coriander, with red onion and lemon on the side.
Cook mode
Indian Dal Makhani with Black Lentils
-
1
Soaking
Wash the black lentils and beans well, and soak them in plenty of water for at least 8 hours or overnight. Soaking isn’t optional here — whole black lentils are very hard, and without it they stay firm even after hours of boiling.
-
2
Boiling
Boil the lentils and beans in fresh water with salt and a pinch of turmeric: 1½–2 hours in a regular pot, or 25–30 minutes in a pressure cooker. They must reach the point where a lentil crushes between two fingers with no resistance at all.
-
3
The flavour base
In a heavy pot, melt 50 g butter and fry the cumin until it crackles. Add the onion and cook for 10 minutes until golden, then the ginger-garlic paste for 2 minutes until the raw smell goes.
-
4
Tomatoes and spices
Add the puréed tomatoes, chilli powder, turmeric and salt, and cook for 15–20 minutes until the fat rises to the surface — in Indian cooking that sign means the tomatoes are cooked and their water is gone.
-
5
The long simmer
Pour the boiled lentils and their water into the tomato mixture and stir. Mash a little against the side of the pot with the back of the ladle to release starch. Leave it on your lowest heat for two hours, stirring every 15 minutes and adding a splash of hot water if it gets too thick.
-
6
Cream and finishing
Add the remaining butter and the cream, the garam masala and the fenugreek rubbed between your palms. Stir and cook for 10 minutes more. Season with salt at the end — the long cooking concentrates it.
-
7
Smoking (optional)
Heat a piece of charcoal over a flame until red, put it in a small metal cup inside the pot, pour half a teaspoon of ghee over it and cover the pot immediately for 3 minutes. The smoke gives the dish the flavour of a tandoor.
Comments
Cooked it? Tell us how it went, or ask a question — we read every comment.