Dal Makhani
A slow-simmered black lentil dal with butter, cream and a warm tomato-spice base — rich, glossy and perfect with rice or naan.

You do need time, but almost none of it is hands-on. Once the aromatics and spices are in the pot, the dal mostly looks after itself, with an occasional stir and a splash of water if it starts to catch. The butter and cream go in right at the end, off the heat, so they stay sweet and fresh rather than cooking down.
This is a generous pot — enough for four as a main with rice, or six as part of a bigger spread with naan and a vegetable side. It also tastes even better the next day, so it is a good one to make ahead.
Ingredients
- 200 g whole black urad dal (black lentils), rinsed and picked over
- 50 g dried red kidney beans, rinsed
- 1.2 litres water, plus more as needed
- 1 teaspoon salt, plus more to taste
- 3 tablespoons ghee or unsalted butter, plus 2 tablespoons butter for finishing
- 1 large onion, finely chopped
- 4 garlic cloves, finely grated
- 20 g fresh ginger, finely grated
- 1 green chilli, finely chopped
- 2 teaspoons ground cumin
- 2 teaspoons ground coriander
- 1 teaspoon garam masala
- 1 teaspoon Kashmiri chilli powder
- 1/2 teaspoon ground turmeric
- 400 g tin chopped tomatoes
- 100 ml double cream
- 1 teaspoon dried fenugreek leaves (kasuri methi), crushed
- 1/2 teaspoon sugar
- Fresh coriander leaves, to serve
- Cooked basmati rice or warm naan, to serve
Instructions
- Soak the black lentils and kidney beans in plenty of cold water for at least 8 hours, or overnight. Drain and rinse well.
- Tip the drained pulses into a large heavy pot with 1.2 litres water and 1 teaspoon salt. Bring to a boil, then reduce the heat, cover and simmer gently for 45–60 minutes, until the lentils are completely soft and starting to break down. Top up with hot water if the pot looks dry.
- While the pulses cook, make the masala. Heat 3 tablespoons ghee or butter in a wide pan over medium heat. Add the onion and cook for 8–10 minutes, stirring often, until soft and lightly golden.
- Add the garlic, ginger and green chilli and cook for 2 minutes, until fragrant. Stir in the cumin, coriander, garam masala, Kashmiri chilli powder and turmeric and cook for 30 seconds, just to toast the spices.
- Add the chopped tomatoes and cook for 8–10 minutes, stirring, until the mixture darkens and thickens and the oil begins to separate at the edges.
- Scrape the masala into the pot of cooked lentils. Add the crushed fenugreek leaves and sugar, stir well and simmer uncovered for 25–30 minutes over low heat, stirring every few minutes, until the dal is thick and glossy. Add hot water a little at a time if it becomes too stiff.
- Take the pot off the heat. Stir in the remaining 2 tablespoons butter and the cream, then taste and adjust the salt. Let it sit for 5 minutes to settle, then serve scattered with fresh coriander, with rice or naan alongside.
Cook’s tips
- Stir the dal more often in the last 15 minutes — the starches make it prone to catching on the base of the pot.
- Use a heavy-bottomed pot; a thin pan will scorch the lentils before they soften.
- If the dal is too thick when you reheat it, loosen it with a splash of water or milk rather than more cream.
Substitutions
- No whole black urad dal? Use whole brown lentils, though the texture will be slightly less creamy.
- Swap the dried kidney beans for a drained 400 g tin of kidney beans, added with the masala.
- For a vegan version, use a good plant butter and swap the cream for 100 ml oat cream or full-fat coconut milk.
Storage & reheating
Keep in an airtight container in the fridge for up to 4 days; reheat gently with a splash of water, adding the cream fresh if you like.
Frequently asked questions
Do I have to soak the lentils and beans overnight?
Yes, ideally. Whole urad dal and dried kidney beans are tough and need the soak to cook evenly. If you are short on time, cover them with boiling water and soak for 2 hours, then allow a little longer in the pot.
Can I make dal makhani in a pressure cooker?
Yes. Pressure cook the soaked lentils, beans, water and salt for about 20 minutes at high pressure, or until very soft, then proceed with the masala and the final simmer. The uncovered simmer at the end still matters for the creamy texture.
Why does my dal makhani taste flat?
It usually needs more salt and a longer simmer. Salt the lentils while they cook, taste the masala before combining, and give the finished dal the full 25–30 minutes to reduce. The fenugreek leaves and the butter stirred in at the end also make a noticeable difference.
Can I freeze the leftovers?
Yes, it freezes well for up to 2 months. Freeze before adding the cream if you can, then reheat gently and stir the cream and butter in at the end.



