Dal Makhani (Creamy Slow-Cooked Black Lentils)
A rich, velvety Punjabi classic — whole black urad lentils and a little rajma, slow-cooked with tomatoes, butter and cream until lusciously silky and deeply flavored.
Dal makhani is the show-off cousin of ordinary dal — slow, indulgent and utterly comforting. Made from whole black urad and a few rajma, it’s simmered long enough that the lentils collapse into a glossy, buttery hug of flavour.
Make it for a weekend dinner, a cosy date night or when you want a big bowl of something that says ‘I care’ without too much fuss. The slow reduction is where the magic lives: patience equals silkiness.
Ingredients
- 250 g Whole urad dal (with skin), dried
- 50 g Dried kidney beans (rajma)
- 1.2 l Water (for cooking) — add more during cooking if needed
- Salt — to taste (about 1½ teaspoons)
- 60 g Unsalted butter — divided: for cooking and finishing
- 30 ml Vegetable oil (or ghee)
- 1 medium Onion — finely chopped (about 150 g)
- 6 cloves Garlic — minced
- 1 inch Ginger — peeled and grated (~15 g)
- 1 piece Green chilli — finely chopped; use 2 if you like more heat
- 400 g Tomato puree — or 3 medium tomatoes, blended
- 15 ml Tomato paste — optional, for extra depth
- 5 ml Red chilli powder (Kashmiri if available)
- 0 ml Turmeric powder
- 5 ml Coriander powder
- 5 ml Cumin powder
- 5 ml Garam masala — plus extra for finishing
- 15 ml Kasuri methi (dried fenugreek leaves) — crushed between palms
- 5 ml Sugar — optional, balances acidity
- 120 ml Fresh cream (double/heavy cream)
- 5 ml Black pepper (freshly ground) — optional
- 30 ml Fresh coriander (cilantro) — chopped, for garnish
- 1 piece Bay leaf
- 1 inch Cinnamon stick
- 3 pieces Cloves
- 2 pieces Green cardamom pods — lightly crushed
- Asafoetida (hing) — a pinch (optional)
- Baking soda — a pinch in soaking water (optional, speeds cooking)
Equipment
- Pressure cooker or Instant Pot (or heavy-based saucepan / Dutch oven for stovetop)
- Blender or stick (hand) blender for tomato puree
- Wooden spatula or ladle
Instructions
Rinse the urad dal and rajma under cold water until the water runs clear. Transfer to a large bowl and cover with cold water by several inches. Soak for 8–10 hours or overnight. (Quick-soak: bring to a boil, simmer 2–3 minutes, then remove from heat and leave covered for 1 hour.) If using, add a very small pinch of baking soda to the soaking water — it helps soften the skins.
Drain and rinse the soaked legumes. Put them in a pressure cooker with 1.2 litres of fresh water and the whole spices (bay leaf, cinnamon stick, cloves, crushed cardamom). Seal and cook: on a traditional stove-top pressure cooker cook for 20 minutes on medium after it reaches full pressure; if using an Instant Pot or electric cooker, cook on High pressure for 20 minutes and allow a natural pressure release for 10 minutes before opening.
If you opened the cooker immediately, allow the pot to rest 10 minutes for residual cooking and then carefully release remaining pressure (or, if you used an Instant Pot, allow the 10-minute natural release then quick-release any remaining pressure).
Heat the oil and half the butter (about 30 g) in a heavy-based saucepan or Dutch oven over medium heat. Add a pinch of asafoetida (if using) and the chopped onion. Sauté, stirring frequently, until the onions are a deep golden brown — this can take 10–12 minutes and is crucial for flavour.
Add the minced garlic, grated ginger and chopped green chilli. Cook for 1–2 minutes until fragrant. Stir in the tomato puree and tomato paste, then add red chilli powder, turmeric, coriander powder and cumin powder. Cook the masala on medium-low, stirring occasionally, until the raw tomato smell has gone and the oil starts to separate from the tomato mixture — about 8–10 minutes.
Spoon the cooked dal and beans into the pan (discard the whole spices if you prefer). Add about 200 ml of the cooking liquid (reserve the rest) and bring to a gentle simmer. Reduce heat to low and simmer uncovered for 45 minutes, stirring every 5–7 minutes and using additional reserved liquid to keep it at a saucy consistency. The dal should reduce and become creamy; use the back of a spoon to mash a few lentils against the pan to help thicken.
Stir in the remaining butter, crushed kasuri methi, garam masala, sugar and freshly ground black pepper. Add the fresh cream and fold through gently. Simmer for 5–8 minutes on the lowest heat — do not boil vigorously after the cream is in the pan.
Taste and adjust salt, sugar or spice. Turn off the heat and let the dal rest for 5–10 minutes — it will thicken slightly. Finish with chopped coriander and an extra drizzle/pat of butter if you like, then serve with steamed basmati rice or hot naan.
Tips
- Caramelise the onions properly — deep golden colour (not merely translucent) gives the dish its sweet, smoky backbone.
- If short on time, pressure-cook the soaked lentils but still finish by simmering the dal in the masala for at least 30–45 minutes to develop flavour.
- Reserve some of the dal cooking liquid — it’s full of flavour and lets you loosen the dal without diluting taste.
- To reheat without drying out, warm gently with a splash of water and a knob of butter; avoid high heat which toughens the texture.
- If you prefer lighter calories, reduce the butter by half and finish with a swirl of low-fat yoghurt or cashew cream instead of heavy cream.
Substitutions
Unsalted butter → Replace with 2 tbsp ghee or use an additional 1–2 tbsp vegetable oil for a dairy-reduced version
Stays closeFresh cream → Use 120 ml cashew cream (soaked cashews blitzed with water) or 120 ml coconut cream for a vegan swap
Noticeably differentWhole urad dal (with skin) → Split urad dal (dhuli) — cooks faster and gives a silkier but slightly less robust texture
Stays closeDried kidney beans (rajma) → Omit entirely or use 50 g black chickpeas (kala chana) — the texture will change but the dish remains delicious
Noticeably different
Nutrition
Per serving · estimated
- 546
- Calories
- 18 g
- Protein
- 50 g
- Carbs
- 31 g
- Fat
- 13 g
- Fibre
- 6 g
- Sugar
- 700 mg
- Sodium
FAQ
Can I make dal makhani without a pressure cooker?
Yes — use a heavy-based pan or Dutch oven and simmer the soaked dal and rajma for 60–90 minutes until very soft, topping up with water as needed. It takes longer but develops excellent depth of flavour.
Why is my dal grainy instead of creamy?
Most often because the lentils weren’t soaked long enough or not cooked tender enough, or the onions/masala weren’t browned sufficiently. Cook lentils until very soft and reduce gently; mash a few lentils to encourage creaminess.
How long will dal makhani keep in the fridge?
Stored in an airtight container, it keeps 3–4 days. Flavour improves overnight. Reheat gently with a splash of water and a knob of butter or cream.
Can I freeze it?
Yes — freezes well for up to 2 months. Thaw in the fridge overnight and reheat slowly, adding a little water to loosen.
How can I make it vegan?
Use oil or vegan butter instead of butter and swap the cream for cashew cream or coconut cream. The flavour will be different but still delicious.
Community Photos
No photos yet
Be the first to share your creation!
