Dal makhani is, by any reasonable measure, the most indulgent lentil dish in the world. The name means "buttery lentils" - and the traditional version delivers on that name with an almost shocking generosity of butter and cream, stirred in throughout the cooking process and used as a finishing pour at the end. It is extraordinary in the traditional version. Rich, deeply dark, slightly smoky from the restaurant tradition of finishing over a charcoal flame, with a creaminess that coats every surface of your mouth and a depth that comes from 12+ hours of cooking in the most ambitious preparations.
This plant-based version achieves that same richness - the same dark, glossy depth, the same creamy finish, the same extraordinary depth from the long-cooked urad dal - without butter and without cream. What it uses instead is coconut cream for the finishing richness, a generous hand with olive oil throughout, and a patience with the cooking time that is the actual secret ingredient in any version of dal makhani.
The patience is not metaphorical. Dal makhani requires time. The overnight soaking of the whole urad dal. The 2-3 hours of slow simmering that allows the dal to break down and the sauce to develop. This is not a weeknight dinner in the conventional sense. It is a weekend project - one that requires perhaps 20 minutes of active work spread across a long afternoon, rewarded with something that tastes unlike anything else a home kitchen regularly produces.
Dal makhani cannot be made without whole black urad dal. This is the one recipe in this collection where there is no practical substitution for the primary ingredient.
Whole black urad dal (whole black lentils, also called black gram) are small, black-skinned lentils that are sold whole - with their skin intact. They are different from split urad dal (white, used in idli and dosa batters), and they are different from any other lentil in the collection. The skin of the urad dal contains the tannins that give dal makhani its characteristic dark colour, and the interior of the lentil contains a high proportion of starch that, when cooked for a long time in liquid, produces a naturally thick, creamy consistency without any added cream.
Where to buy: South Asian grocery stores carry whole black urad dal reliably and affordably. It is available online (Amazon, specialist South Asian food retailers). Some health food shops carry it under the name "black lentils" or "black gram."
The overnight soak: Whole urad dal requires a minimum of 8 hours of soaking before cooking. Unlike split red lentils (which require no soaking and dissolve in 20 minutes), whole urad dal is dense and resistant. Even after 8 hours of soaking, it will require 2–3 hours of cooking. Skipping or shortening the soak extends the cooking time significantly and produces a less creamy result.
Serves 6 | Active time: 20 minutes | Soaking: 8-12 hours | Total cooking time: 3 hours
Place the urad dal in a large bowl and cover with at least twice its volume of cold water. Soak for 8-12 hours - overnight is the standard. The dal will absorb water and swell significantly.
Drain and rinse thoroughly before cooking.
Place the drained urad dal in a large, heavy-based pot. Cover with 1.5 litres of fresh cold water. Bring to a boil over medium-high heat, skim any foam that rises to the surface in the first 5 minutes, then reduce to a gentle simmer.
Cook, partially covered, for 2-3 hours, stirring every 20-30 minutes and adding additional water as needed to keep the dal submerged. The dal is ready when:
Pressure cooker / Instant Pot shortcut: Pressure cook the soaked dal with the water on high pressure for 25-30 minutes, then natural release for 15 minutes. This produces a cooked dal in 45 minutes rather than 2-3 hours. The slow-cooked version has a slightly deeper, more integrated flavour, but the pressure-cooked version is excellent.
Add the drained kidney beans in the final 20 minutes of simmering (or add to the pressure cooker from the start and reduce cooking time to 20 minutes).
In a separate, wide pan, heat 3 tbsp of oil over medium-high heat. Add the onion and cook for 10-12 minutes until deeply golden - more deeply coloured than you might usually cook onions. For dal makhani, the onion should be past golden and approaching a caramel-brown. This deep caramelisation is a significant contributor to the dal's characteristic dark, rich flavour.
Add the garlic and ginger. Cook for 2 minutes, stirring constantly - the moisture from the garlic and ginger sizzles in the hot fat.
Add the tomato paste. Stir and cook for 90 seconds until it darkens slightly.
Add the cumin, coriander, smoked paprika, garam masala, and cayenne. Stir for 60-90 seconds - the spices bloom in the oil.
Add the crushed tomatoes and soy sauce. Simmer for 8-10 minutes until the tomato mixture is thick, glossy, and reduced - it should look like a dense, deeply coloured paste rather than a liquid sauce.
Add the tarka to the pot of cooked dal. Stir to combine thoroughly. The two elements - the creamy, dark lentil base and the richly spiced tomato tarka - should merge into a unified, dark, glossy dal.
Simmer over low heat for 30-40 minutes, stirring every 10 minutes. This final simmer is where the integration happens - the flavours of the tarka penetrate the dal, the starch from the broken-down lentils thickens the tomato sauce, and the whole dish becomes more cohesive and complex than either element was separately.
The dal at this point should be: thick, dark, glossy, and richly spiced. It should hold its shape on a spoon - not liquid, not dry, but somewhere between a thick sauce and a stew.
Remove from heat. Stir in the coconut cream slowly - add it in two or three additions, stirring between each, to ensure it incorporates smoothly rather than sitting in a pool on the surface.
Add the olive oil or vegan butter. Stir until melted and glossy.
Add the lemon juice. Taste and adjust: more salt, more lemon for brightness, more garam masala for warmth, more coconut cream for richness.
Dal makhani is traditionally served in a small karahi (Indian iron wok) or in a deep bowl. The dark, glossy dal should look intensely rich - which it is.
Drizzle a little additional coconut cream over the top in a swirl. Scatter fresh coriander. Add sliced fresh chili or pickled chili if using.
Serve with basmati rice or warm naan. For the naan alongside, see the Indian Street Food section of the South Asian Pantry guide.
Dal makhani is one of the best slow cooker dishes in this collection. The extended, low heat of the slow cooker produces an integration of flavours that even a 3-hour stovetop simmer can't quite achieve.
Method: Complete the tarka on the hob. Transfer the tarka and the soaked (uncooked) urad dal and kidney beans to the slow cooker. Add 1.2 litres of water. Cook on low for 10-12 hours (overnight is ideal - start it before bed, it's ready when you wake). Add the coconut cream, oil, and lemon juice, stir, and serve.
The slow cooker version has the most integrated flavour and the creamiest texture of any cooking method. It is the recommended approach for anyone with a slow cooker.
The traditional dal makhani gets its richness from three sources: the natural starch of the urad dal (which both versions share), the substantial amounts of butter (added throughout the cooking and as a final pour), and the cream (added at the end).
This version replaces the butter and cream with: olive oil throughout (which provides fat but a different flavour), and coconut cream at the end (which provides richness and a slight sweetness). The coconut flavour is detectable in this dish - not prominent, but present. For those who find it intrusive, full-fat cashew cream (see Cashew Cream, thick ratio) provides a more neutral richness and is the best dairy-free alternative.
The smoked paprika partially replaces the charcoal smoke that restaurant dal makhani develops from its finishing over live fire - a flavour element that no home kitchen can replicate exactly but that this technique approximates.
The result tastes of itself, not of what it is missing.
Common Mistake: Insufficient Cooking Time Dal makhani requires a minimum of 2.5-3 hours of total cooking time (dal cooking + tarka + combined simmer) for the textures and flavours to develop correctly. Dal makhani at 1 hour has individual lentils that are cooked but not broken down, a sauce that has not integrated, and flavours that taste of their components rather than the dish. If you are short on time, use the pressure cooker for the dal and the slow cooker for the final simmer. There is no shortcut through the cooking time.
Canned urad dal is available from South Asian grocery stores and produces a reasonable dal makhani in significantly less time - skip the soaking and initial cooking stages and proceed directly to combining with the tarka for a 30-minute simmer. The result is good but less rich and creamy than slow-cooked whole urad dal. The breakdown of the lentils during the long cook is part of the texture the dish is famous for.
Very thick - almost the consistency of a thick stew rather than a soup. The traditional restaurant version is served in a small karahi and is dense enough that it barely moves when the dish is tilted. The thickness comes from the starch released by the broken-down urad dal during the long cook. If your dal is too thin, simmer uncovered for 15-20 minutes more, stirring frequently.
Not significantly - the strong spice profile of the tarka (cumin, coriander, garam masala, garlic, ginger) dominates the flavour. The coconut adds richness and a faint sweetness rather than a specific coconut character. In a dish this boldly seasoned, the coconut is a background element rather than a defining one.
🔗 Continue Cooking