![]()
Dal Makhani is one of the most loved dishes in Indian cooking. It is a rich, creamy lentil curry made mainly from whole black gram, known as urad dal, and a small amount of kidney beans, called rajma. The name itself gives away the secret. “Dal” means lentils, and “Makhani” means buttery. So Dal Makhani simply means buttery dal, and that buttery, slow-cooked taste is exactly what makes it so special.
This guide will show you how to make a true Punjabi Dal Makhani at home, in simple steps. We will also talk about where the dish comes from, why slow cooking matters so much, and how to get that smoky, dhaba style flavor that makes restaurant dal makhani taste so different from a quick homemade version.
What Is Dal Makhani, and Where Does It Come From?
Dal Makhani comes from the Punjab region of India, and it is closely linked to the story of a famous Delhi restaurant called Moti Mahal. It is widely believed that Dal Makhani was created by Kundan Lal Jaggi and Kundan Lal Gujral, two Punjabi restaurant owners who had already found great success with butter chicken. After that success, they wanted a rich, buttery vegetarian dish that could match the same comfort and flavor, and Dal Makhani was the result.
Traditionally, this dal makhani recipe was cooked slowly overnight, often over a wood or coal fire, which is part of why the dish became known for its deep, smoky flavor. Even today, at most dhabas along the highways of Punjab and Delhi, the dal is left to simmer gently for hours, which is the real secret behind that rich, dhaba style dal makhani taste that so many people try to recreate in their own kitchens.
Why Slow Cooking Is the Real Secret Here
It is easy to think Dal Makhani is all about butter and cream, but the truth is that time matters just as much as any single ingredient.
Soaking overnight makes a real difference
Whole urad dal and rajma are both quite hard when dry, and soaking them for 8 to 10 hours, or overnight, softens them properly before cooking. This step also helps them cook more evenly later, so you do not end up with some lentils fully soft and others still slightly hard.
Pressure cooking gets the lentils fully soft
The lentils need to be cooked until they are completely soft, almost falling apart when pressed between your fingers. This is important, because a good Punjabi Dal Makhani should feel smooth and creamy, not grainy or undercooked.
Mashing a small part of the dal builds body
Instead of blending the whole pot, only about 20 percent of the lentils are mashed against the side of the pan with the back of a ladle. This small step thickens the gravy naturally and gives it that classic creamy texture, without needing to add a lot of extra cream.
A long, slow simmer changes the color and taste
This is the real heart of any good dal makhani recipe. Simmering the dal gently for 40 to 45 minutes, stirring now and then so it does not stick to the bottom, allows the color to slowly turn a deep brown-red, and the flavor to become much richer and more rounded. A quick 10-minute simmer will never give you the same depth that a slow, patient cook does.
The optional smoky dhaba touch
Many restaurant style dal makhani recipes finish with a small trick called the dungar method, where a piece of hot charcoal is placed in a small bowl inside the pot, topped with a few drops of ghee, and covered for a few minutes. This traps a light smoky flavor inside the dal, which is one of the small details that makes dhaba style dal makhani taste so different from a plain homemade version.
Ingredients for Punjabi Dal Makhani (Serves 5-6)
A. For Boiling the Lentils
- Whole black gram (sabut urad dal): 1 cup
- Kidney beans (rajma): 1/4 cup
- Water: 4-5 cups
- Salt: 1 teaspoon
- Butter or oil: 1 tablespoon
B. For the Tempering and Gravy (Tadka)
- Butter: 3-4 tablespoons, unsalted white butter is best, or regular butter
- Ghee: 1 tablespoon
- Onion: 1 large, finely chopped
- Ginger-garlic paste: 1.5 tablespoons
- Fine tomato puree: 1.5 cups, freshly made from 3-4 ripe tomatoes
- Kashmiri red chili powder: 1 tablespoon
- Cumin seeds: 1/2 teaspoon
- Garam masala powder: 1/2 teaspoon
- Coriander powder: 1/2 teaspoon
- Salt: to taste
C. For Finishing and the Smoky Flavor (Dungar)
- Fresh heavy cream: 3 tablespoons
- Kasuri methi (dried fenugreek leaves): 1 teaspoon, crushed
- Butter: 1 tablespoon
- A small piece of charcoal (optional, for authentic dhaba smoke)
- Ghee: 1/2 teaspoon, for the charcoal smoke
Step-by-Step Method
Step 1: Soak and Boil the Dal
- Wash the whole urad dal and rajma together 3-4 times in water, rubbing them gently between your palms until the water runs clear.
- Soak them in plenty of water for 8 to 10 hours, or overnight.
- Drain the soaking water and transfer the dal and rajma to a pressure cooker.
- Add 4.5 cups of fresh water, 1 teaspoon of salt, and 1 tablespoon of butter.
- Pressure cook on medium heat for 6-8 whistles, until the lentils are completely soft and mash easily between your fingers.
Step 2: Prepare the Tadka (Gravy)
- Heat the butter and ghee in a heavy-bottomed pan or handi.
- Add the cumin seeds and let them crackle.
- Add the chopped onions and saute on medium heat until golden brown.
- Add the ginger-garlic paste and saute for 2 minutes, until the raw smell disappears.
- Add the Kashmiri red chili powder, coriander powder, and tomato puree.
- Cook on medium heat for 8-10 minutes, until the oil and butter start to separate from the sides of the mixture.
Step 3: Slow Cook (The Makhani Secret)
- Add the boiled dal and rajma, along with their cooking water, into the tomato gravy.
- Mash about 20 percent of the lentils using the back of a ladle against the side of the pan, to build a rich, creamy texture.
- Add 1 cup of warm water, stir well, and bring it to a gentle boil.
- Lower the heat to very low. Cover and simmer slowly for 40 to 45 minutes, stirring every few minutes so nothing sticks to the bottom.
- As it cooks, watch the color slowly turn richer and darker, and the texture become smoother and creamier.
Step 4: Finish the Dal, With an Optional Smoky Touch
- Stir in the fresh cream, crushed kasuri methi, garam masala, and 1 extra tablespoon of butter.
- Simmer on low heat for another 5 minutes.
- For the optional dhaba smoke: place a small steel bowl on top of the cooked dal, right inside the pot.
- Heat a small piece of charcoal on the gas flame until it turns red hot.
- Place the hot charcoal inside the small bowl and pour half a teaspoon of ghee over it.
- Immediately cover the pot with a lid for 2-3 minutes, so the smoke gets trapped inside.
- Remove the charcoal bowl carefully and give the dal a final stir before serving.
Tips for the Best Punjabi Dal Makhani
- Do not skip the overnight soak – it is one of the easiest ways to get evenly cooked, soft lentils.
- Use a heavy-bottomed pan for the slow simmer, since a thin pan is much more likely to let the dal stick and burn at the bottom.
- Stir often during the long simmer, especially in the last 15 minutes, when the dal is thicker and more likely to catch at the bottom.
- Use fresh tomato puree instead of store-bought puree whenever you can, since it gives a cleaner, brighter taste to the gravy.
- Add the cream near the end of cooking, not at the start, so it stays smooth and does not lose its richness over a long simmer.
Common Mistakes to Avoid
Dal Makhani does not have a long or difficult ingredient list, but a few small mistakes are easy to make, especially the first time.
- Rushing the simmering stage, which skips the slow cooking that gives this dal makhani recipe its deep, rounded flavor.
- Skipping the soaking step, which can leave some lentils undercooked even after pressure cooking.
- Not stirring often enough, which can cause the thick dal to stick and burn at the bottom of the pot.
- Adding too much cream, which can make the dish taste heavy instead of balanced.
- Using a thin, watery tomato puree, which can make the gravy taste sour instead of rich and smooth.
Vegan and Lighter Versions
Traditional Punjabi Dal Makhani is rich with butter and cream, but it can easily be made lighter or fully vegan with a few simple swaps. Plant-based butter and coconut cream, or a small amount of cashew paste, can replace the dairy butter and cream while still giving the dish a smooth, creamy texture. Using less butter overall, and simmering the dal a little longer instead, can also help build richness naturally through the slow cooking process rather than through extra fat. The core steps – soaking, boiling, slow simmering, and mashing a portion of the lentils – stay exactly the same no matter which version you choose.
Storage and Reheating Notes
Dal Makhani stores very well, and many people feel it tastes even better the next day, once the flavors have had more time to settle. Keep it in an airtight container in the fridge for up to 3-4 days. It also freezes well for up to a month, though it is best to add the fresh cream only after reheating, rather than freezing it with the cream already mixed in. When reheating, warm it gently on low heat on the stove, adding a small splash of water or milk if the dal has thickened too much, and stir often so it does not stick to the pan.
A Simple Note on Nutrition
Dal Makhani is a good source of plant-based protein, since both urad dal and rajma are lentils that are naturally rich in protein and fiber. At the same time, it is also a rich dish, thanks to the butter, ghee, and cream used in the tempering and finishing stages, so it is best enjoyed as a hearty main dish rather than a small side. For a lighter version, the amount of butter and cream can be reduced without losing the core flavor, especially if the dal is given enough time to simmer slowly, since that slow cooking is what builds most of the dish’s richness in the first place.
When Dal Makhani Is Usually Served
While Dal Makhani can easily be made on any regular day, it is especially popular during festivals, family gatherings, and special weekend meals, largely because of the time it takes to cook properly. Many Punjabi households make a large batch for celebrations like Diwali or family get-togethers, since it holds up well when made ahead and often tastes even better after resting for a few hours. It is also one of the most commonly ordered dishes at Indian weddings and buffet-style events, alongside naan, paneer dishes, and rice, because its rich, comforting flavor appeals to almost everyone at the table, regardless of how spicy or mild their usual taste in food happens to be.
What to Serve With Dal Makhani
- Garlic butter naan, a classic restaurant pairing
- Jeera rice, for a simple, comforting meal
- Lachha paratha, a layered, flaky bread
- A simple onion salad or plain yogurt on the side
Choosing the Right Lentils and Beans
The quality of the urad dal and rajma you use has a real effect on the final Punjabi Dal Makhani, so it is worth being a little careful when picking these out.
Whole urad dal, not split
This dal makhani recipe needs whole black urad dal, not the split or skinned version often called white urad dal. The whole, unskinned lentil holds its shape better through the long simmer and gives the dish its classic dark color and heartier bite.
Fresh, not old stock
Lentils and beans that have been sitting in storage for a long time can take much longer to soften, even after a full overnight soak. Buying urad dal and rajma from a shop with good turnover, rather than from a bag that has been sitting unused for a year or more, makes a noticeable difference to how evenly everything cooks.
The right ratio of dal to rajma
A small amount of rajma, compared to a much larger amount of urad dal, is what most traditional recipes use. Too much rajma can make the dish taste more like a straightforward kidney bean curry, rather than the deep, buttery black lentil curry that a proper Punjabi Dal Makhani is meant to be.
A Closer Look at the History of Dal Makhani
The story behind Dal Makhani is closely tied to Partition-era migration and the growth of Delhi’s restaurant culture in the mid-20th century. Kundan Lal Jaggi and Kundan Lal Gujral, the two men widely credited with creating the dish, were Punjabi Hindu restaurant owners originally from Peshawar, in what is now Pakistan. After moving to Delhi, they opened the now-famous restaurant Moti Mahal, which is also closely linked to the invention of butter chicken and tandoori chicken.
Since urad dal was already a common, everyday lentil in Punjabi households, it made sense as the base for a new, rich vegetarian dish that could sit alongside their already popular butter chicken on the menu. Over time, as tandoor and slow-cooking techniques from Peshawar and Punjab blended together in Delhi’s restaurant kitchens, Dal Makhani grew from a single restaurant’s specialty into one of the most recognized dishes on Indian menus around the world, both in dhabas and in fine dining restaurants.
Simple Variations to Try
Once you are comfortable with the basic recipe, a few small changes can give you a slightly different take on this classic dal makhani recipe, without straying too far from tradition.
- Extra smoky flavor: repeat the dungar smoking step twice, letting the dal rest under the lid a little longer each time, for an even deeper smoky taste.
- Less rich version: reduce the butter and cream by about half, and let the dal simmer for an extra 10-15 minutes to build richness naturally instead.
- Spicier version: add one or two finely chopped green chilies along with the onions, for a little extra heat alongside the classic buttery flavor.
- Restaurant-style finishing swirl: just before serving, swirl a small spoon of fresh cream on top in a circular pattern for the same presentation you often see in restaurant style dal makhani.
Ingredient Substitutions
A few ingredients in this recipe may be harder to find in some kitchens, so here are some simple swaps that still keep the dish close to an authentic Punjabi Dal Makhani.
- Whole urad dal: if unavailable, split urad dal with skin can be used, though the texture will be a little less thick and the cooking time may be slightly shorter.
- Rajma: red kidney beans from a can can be used in a pinch, though they should be added later, since they are already fully cooked and do not need the same long pressure-cooking time as the dried version.
- Kashmiri red chili powder: a mix of regular red chili powder and a little paprika can be used instead, for a similar color without too much extra heat.
- Fresh cream: full-fat milk simmered down slightly, or a small amount of cashew paste, can replace fresh cream if it is not available.
- Charcoal for smoking: if you do not have charcoal, this step can simply be skipped. The dal will still taste rich and buttery, just without the smoky dhaba touch.
Frequently Asked Questions
What is dal makhani made of?
It is mainly made from whole black gram (urad dal) and a small amount of kidney beans (rajma), slow-cooked with butter, tomatoes, simple spices, and finished with cream, which together give it its rich, buttery taste.
Why do you need to soak the dal overnight?
Soaking softens the hard, dry lentils so they cook more evenly later, and it also helps shorten the pressure cooking time needed to get them completely soft.
Can dal makhani be made without cream?
Yes, cream can be reduced or left out completely, especially if the dal is simmered a little longer, since the natural mashing of the lentils and the long, slow cooking already build a good amount of creaminess on their own.
What gives dal makhani its smoky dhaba flavor?
Some restaurants and dhabas use a method called dungar, where hot charcoal is placed in a small bowl inside the pot along with a little ghee, then covered briefly to trap a light smoky flavor inside the dal.
What is served with dal makhani?
It is most often served with garlic butter naan or jeera rice, though lachha paratha and plain roti are also common and popular pairings.
Can dal makhani be made in an instant pot or slow cooker?
Yes, both work well. An instant pot can handle the pressure cooking stage for the lentils quickly, and then switch to a gentle simmer setting for the slow cooking stage, while a slow cooker is a good option if you want to let the dal simmer for several hours with very little supervision, closer to the traditional overnight method used at many dhabas.
Final Thoughts
Punjabi Dal Makhani proves that a truly great dish does not always need a long or complicated ingredient list. With just urad dal, a little rajma, butter, tomatoes, and simple spices, patience is really the main ingredient that turns this humble lentil dish into something rich, creamy, and deeply comforting. Once you taste that first spoonful of a properly slow-cooked dal, with its deep color and smooth, buttery texture, you will understand why this dhaba style dal makhani has become one of the most loved dishes on Indian menus everywhere, from small roadside dhabas to some of the biggest restaurants in the world. Whether you keep it rich and traditional, or make a lighter version at home, the same simple idea stays true from the very first bite to the last: good lentils, good butter, and enough time on a low flame, cooked together with care.



