
Have you ever tasted a dish so deeply satisfying that it feels like a warm hug in a bowl? That’s exactly what this Dal Makhani recipe delivers every single time. Rich, creamy, and packed with slow-cooked flavour, Dal Makhani is the crown jewel of North Indian cuisine — and the best part? You can easily make this homemade Dal Makhani with ingredients you likely already have in your pantry.
Whether you’re an experienced home cook or just beginning your culinary journey, this easy Dal Makhani comes together beautifully with a little patience and a few simple tricks. In this post, you’ll discover the full ingredient list, step-by-step instructions, expert tips, recipe variations, and answers to the most commonly asked questions.
Let’s dive in!
What is Dal Makhani?
Dal Makhani (literally meaning “buttery lentils”) is a beloved Indian dish originating from the Punjab region. It was popularised in the 1950s by Kundan Lal Gujral at his iconic restaurant Moti Mahal in Delhi, where slow cooking over a tandoor gave it that signature silky texture.
The dish is made primarily with whole black lentils (urad dal) and kidney beans (rajma), slow-simmered with butter, cream, tomatoes, and aromatic spices. What sets this Dal Makhani recipe apart from other lentil dishes is the long cooking time — which transforms humble ingredients into an impossibly creamy, restaurant-worthy dish.
Today, it’s a staple at Indian restaurants worldwide and a must-have at celebrations and family gatherings.
Why You’ll Love This Recipe
- Restaurant quality at home — this best Dal Makhani recipe tastes like it came straight from a dhaba.
- Beginner-friendly — the steps are clear and straightforward, even if you’re new to Indian cooking.
- Make-ahead magic — it tastes even better the next day as the flavours deepen overnight.
- Crowd-pleaser — vegetarian, filling, and universally adored by adults and children alike.
- Flexible — works on the stovetop, Instant Pot, or slow cooker.
Ingredients
Main Lentils & Beans
- 1 cup (200g) whole black lentils (urad dal / sabut urad) — rinsed and soaked overnight
- ¼ cup (50g) red kidney beans (rajma) — rinsed and soaked overnight
- 4 cups (1 litre) water — for pressure cooking
For the Makhani Gravy
- 3 tablespoons unsalted butter (plus 1 tbsp for finishing)
- 1 tablespoon neutral oil (sunflower or vegetable)
- 1 medium onion, finely chopped
- 1 tablespoon fresh ginger paste
- 1 tablespoon fresh garlic paste
- 2 medium tomatoes, puréed (or ¾ cup canned tomato purée)
- 1 teaspoon cumin seeds
- 1 bay leaf
- 1 teaspoon Kashmiri red chilli powder
- ½ teaspoon garam masala
- ½ teaspoon coriander powder
- Salt to taste
- ⅓ cup (80ml) fresh heavy cream
- 1 teaspoon kasuri methi (dried fenugreek leaves), crushed between palms
Key Ingredient Notes
Urad dal: Do not substitute with split or husked urad dal — the whole lentil is essential for that thick, creamy texture. Soaking overnight reduces cooking time and improves digestibility.
Kashmiri red chilli powder: Gives Dal Makhani its gorgeous deep-red colour without excess heat. Replace with sweet paprika + a tiny pinch of cayenne if needed.
Kasuri methi: Adds a subtle, slightly bitter depth that is a hallmark of authentic Indian cooking. Find it at any Indian grocery store or online.
Approximate Nutrition Per Serving
| Calories | Protein | Carbohydrates | Fat | Fibre | Sodium |
|---|---|---|---|---|---|
| ~320 kcal | ~14g | ~32g | ~16g | ~9g | ~480mg |
*Estimates based on one serving (serves 4). Values vary with butter and cream quantities.
Step-by-Step Instructions: How to Make Dal Makhani
-
Soak the lentils (8 hours or overnight)
Place the whole black lentils and kidney beans in a large bowl. Cover generously with cold water and soak for at least 8 hours, or ideally overnight. Soaking is essential — it softens the lentils and cuts cooking time significantly. -
Pressure cook the lentils
Drain and rinse the soaked lentils. Add to a pressure cooker with 4 cups of fresh water and 1 tsp salt. Pressure cook on high for 5–6 whistles (25–30 minutes). Instant Pot: High Pressure for 30 minutes, natural release. The lentils should be completely soft — creamy when pressed between your fingers. -
Make the aromatic base
Heat the butter and oil in a large, heavy-bottomed pot over medium heat. Add the cumin seeds and bay leaf. When the cumin sizzles and turns golden (about 30 seconds), add the finely chopped onions. Cook for 10–12 minutes, stirring occasionally, until the onions turn a deep golden brown. -
Add ginger, garlic & tomatoes
Stir in the ginger and garlic pastes and cook for 2 minutes until the raw smell disappears. Pour in the tomato purée and cook on medium heat for 8–10 minutes, stirring frequently, until the mixture darkens and the oil separates around the edges. Add the Kashmiri red chilli powder, coriander powder, and garam masala; stir well for 1 minute. -
Combine the dal and simmer
Add the cooked lentils and kidney beans to the pot with any remaining cooking liquid. Stir together well. Add ½ cup warm water if the dal looks too thick. Bring to a gentle boil, then reduce heat to low and simmer uncovered for 45 minutes to 1 hour, stirring every 10–15 minutes. The dal will gradually thicken and turn a deep reddish-brown. -
Add cream & finish
Stir in the heavy cream and remaining tablespoon of butter. Simmer on very low heat for a further 10 minutes, stirring often. Crush the kasuri methi between your palms and sprinkle it in. Taste and adjust salt as needed. -
Optional: smoky dhungar finish
Place a small piece of natural charcoal on a flame until red-hot. Set it in a small metal bowl on the surface of the dal. Drizzle a few drops of ghee over the coal, immediately cover the pot tightly, and leave for 2–3 minutes. Remove the bowl and coal — your dal will have a gorgeous, subtle smoky aroma. -
Garnish & serve
Ladle into bowls and top with a swirl of cream, a small knob of butter, and a pinch of Kashmiri chilli powder. Serve hot with naan, roti, or basmati rice.
Pro Tips & Tricks
- Soak overnight, no shortcuts: Skipping the soak is the most common mistake. Unsoaked lentils take almost twice as long and the texture won’t be as creamy.
- Low and slow is the key: The longer you simmer the dal after pressure cooking, the richer the flavour. Don’t rush — 45 minutes to an hour makes a world of difference.
- Butter matters: Use real unsalted butter rather than margarine. Supplement with ghee for an even richer result.
- Cream substitution: For a lighter or vegan version, use full-fat coconut cream instead of dairy cream.
- Make-ahead: Dal Makhani improves overnight as flavours meld. Make it the day before and reheat gently with a splash of water.
- Stir gently: Keep some whole lentils intact for a beautiful varied texture — not just a uniform mush.
- No pressure cooker? Simmer the soaked lentils in a regular pot for 2–3 hours until completely tender, adding water as needed.
Variations
- Vegan Dal Makhani: Replace butter with vegan butter or coconut oil, and substitute heavy cream with full-fat coconut cream. Still lusciously creamy.
- Instant Pot Dal Makhani: Cook soaked lentils on High Pressure for 30 minutes. Use the Sauté function to build the gravy, add lentils back, and simmer on Sauté (low) for 20–25 minutes.
- Slow Cooker Dal Makhani: Prepare the gravy on the stovetop, then transfer everything to a slow cooker with soaked (uncooked) lentils. Cook on Low for 8–10 hours. Add cream in the final 30 minutes.
- Restaurant-style: Double the butter and cream, and use the dhungar charcoal smoking technique (Step 7) for that unmistakable finish.
What to Serve With Dal Makhani
Dal Makhani pairs beautifully with a variety of breads and rice dishes. Here are our favourite combinations:
- Garlic Naan — soft, pillowy, and perfect for scooping. Try our Garlic Naan Recipe for the best results.
- Basmati Rice — the classic pairing. Our Perfect Basmati Rice guide gives flawless results every time.
- Jeera Rice — cumin-infused rice adds an extra layer of flavour. See our Jeera Rice Recipe.
- Whole Wheat Roti — for a lighter, wholesome meal. Pair with Tandoori Roti.
- Cucumber Raita — a cooling yogurt side that balances the richness. Our Cucumber Raita is ready in 5 minutes.
Storage & Reheating Instructions
Refrigerator
Cool completely, then store in an airtight container for up to 4–5 days. The flavours deepen considerably by day two — ideal for meal prep.
Freezer
Freeze in airtight containers or ziplock bags for up to 3 months. Leave space for expansion. Thaw overnight in the refrigerator before reheating.
Reheating
Reheat gently in a saucepan over low-medium heat, adding 2–4 tablespoons of water to loosen the dal (it thickens significantly when cold). Microwave works too — heat in 60-second intervals, stirring between each. Finish with a small knob of fresh butter before serving.
Frequently Asked Questions
Can I make Dal Makhani without a pressure cooker?
Absolutely! Simply cook the soaked lentils in a large pot of water on the stovetop over medium-low heat for 2–3 hours until completely tender. Add more water as needed to keep the lentils submerged. The rest of the recipe remains exactly the same.
Why is my Dal Makhani not creamy enough?
The creaminess comes from two things: long, slow simmering (which breaks down lentil starches) and the cream and butter at the end. If your dal isn’t creamy, simmer for an extra 20–30 minutes and mash a small portion of the lentils against the side of the pot to release more starch into the gravy.
How long does authentic Dal Makhani take to cook?
Traditional restaurant-style Dal Makhani is slow-cooked for 8–12 hours over a low flame. At home, after soaking overnight, the active cooking time is approximately 1.5–2 hours. The longer you simmer it on low heat, the more flavourful and creamy it becomes.
What is the difference between Dal Makhani and Dal Tadka?
Dal Makhani uses whole black lentils, slow-cooked with butter and cream for a rich, thick, dark gravy. Dal Tadka is typically made with yellow split lentils (toor dal or moong dal), finished with a hot spiced oil temper (tadka), and has a much lighter, brothier consistency.
Can I make easy Dal Makhani ahead of time for a dinner party?
Dal Makhani is one of the best dishes to make ahead. Prepare it fully the day before, refrigerate overnight, and the flavours will deepen beautifully. Reheat gently on the stovetop with a splash of water, finish with fresh cream and butter, and serve. Your guests will love it!
Ready to Make the Best Dal Makhani of Your Life?
There you have it — everything you need to make an incredible, restaurant-quality Dal Makhani recipe right in your own kitchen. From the slow-simmered lentils to that final swirl of cream and butter, every step builds deep, layered flavour that will have your family and friends asking for seconds.
Furthermore, this dish only gets better the next day — so don’t be afraid to make a big batch. Whether you serve it with warm naan, fluffy basmati rice, or rustic roti, this homemade Dal Makhani is guaranteed to become a firm favourite in your household.
If you try this recipe, I’d love to hear how it went! Leave a comment below, give it a ⭐ star rating, and share a photo on social media. Happy cooking!
Can I make Dal Makhani without a pressure cooker?
Absolutely! Simply cook the soaked lentils in a large pot on the stovetop over medium-low heat for 2–3 hours until completely tender. Add more water as needed. The rest of the recipe stays exactly the same.
Why is my Dal Makhani not creamy enough?
Creaminess comes from long, slow simmering and the butter and cream at the end. If it’s not creamy enough, simmer an extra 20–30 minutes and mash a small portion of the lentils against the pot to release more starch into the gravy.
How long does authentic Dal Makhani take to cook?
Traditional restaurant-style Dal Makhani is slow-cooked for 8–12 hours. At home, after overnight soaking, active cooking time is approximately 1.5–2 hours. The longer you simmer, the better it gets.
What is the difference between Dal Makhani and Dal Tadka?
Dal Makhani uses whole black lentils slow-cooked with butter and cream for a rich, thick gravy. Dal Tadka uses yellow split lentils finished with a hot spiced oil temper and has a much lighter, brothier consistency.
Can I make easy Dal Makhani ahead of time for a dinner party?
It’s actually ideal! Prepare it fully the day before and refrigerate. The flavours deepen overnight. Reheat gently with a splash of water, finish with fresh cream and butter, and serve.