Dal Makhani
North Indian

Dal Makhani

4.7/5 - (7 votes)

Dal Makhani is a popular North Indian Punjabi main course recipe where whole urad dal is cooked in onion, tomato, whole spices, and simmered on low heat then topped with butter and cream for that unique flavor.

The rich and indulgent dal is a true north Indian restaurant-style dish, and is also called as “Kali Dal” or “Maa Di Dal”. Some restaurants cook it in the tandoor, which gives it a unique smoky flavor.

Ancient lentil legends (it’s a thing) declare that dal makhani takes exactly 142 minutes and 47 stirs to make. Slow cooking enhances all the flavors and makes the dal super delicious and creamy. A lot of restaurants who are known for their amazing dal makhani actually simmer it the whole day.

Although in this day and age we don’t have the luxury of cooking over coals or even simmering the dal for half a day! So the addition of a small quantity or Rajma/ Kidney beans will give the makhani gravy its rich texture and also a little bit of color.

Everybody loves a basic tadka dal as part of an Indian meal. A bowl of warm dal, rice topped with ghee is comfort food and even makes a perfect accompaniment to any meal. But when we think of slow-cooked creamy Dal Makhani it’s in a league of its own.

Its one of the most popular dals in India and it’s certainly my husband’s favorite. It’s there on the menu of every Indian restaurant and in every Indian wedding and parties. It’s a rich dal and hence was made on special occasions only.

This is an ideal recipe for parties, so don’t miss preparing this restaurant style Dal Makhani at home. It tastes best with garlic naan and rice.

Do try other similar recipes :

Preparation Time: 8Hrs  ∏  Cooking Time: 1Hr  ∏  Servings: 3-4 persons

Level: Intermediate(Medium)  ∏  Measurement: 1 Cup ≡ 250 ml ≡ 250gm

Ingredients Checklist:

For Dal Makhani

For Tadka

How to make Dal Makhani:

Make the Dal Makhani

Step1: Wash and soak both 3/4 cup whole urad dal (black lentils) and 1/4 cup rajma (kidney beans) in enough water for 7-8 hours or overnight.

Step2: Once soaked, drain the water in which the dal and rajma were soaked. Wash it again with water and drain.

Step3: Transfer them to a pressure cooker with 1 teaspoon salt. Add around 3 cups of water. Pressure cook on high-medium heat for 2-3 whistles. (Here in the U.S it takes very less time to pressure cook any lentils as it depends upon the type of water). If you are in India Cook it for at least 4-5 whistle). Let the pressure release naturally. Once boiled, the dal should be soft enough to crush against the side of the cooker.

Step4: Heat a pan on low-medium flame, add ghee. Add the cloves, cinnamon, green cardamom pods, black cardamom, bay leaf, and jeera and cook until the spices are fragrant about 20 seconds.

Step5: Now add finely chopped onion, stir often and saute till the onions turn light golden for about 3-4 minutes on medium flame.

Step6: Once the onions turn translucent, add crushed ginger-garlic (or ginger-garlic paste), green chili and cook for 30-40 seconds.

Step7: Once the onion turns golden brown, reduce the flame to low and add 1/2 teaspoon cumin powder, 1/2 teaspoon Kashmiri red chili powder, 1 teaspoon coriander powder. Mix everything.

Step8: Pour tomato puree and mix. (For making tomato puree add 3 medium-size or 2 large chopped tomato in a grinder and make a smooth paste). Cover and cook it for 3-4 minutes on medium flame until the oil separates from the masala.

Step9: Add a pinch of nutmeg powder. Cook for 2 minutes or until the puree mixes well with masala and oil starts oozing out from the sides.

Step10: Now add the cooked urad dal and rajma along with the stock. Also, add 1 cup water or as required.

Step11: Stir and set heat to low. Let it simmer on low heat uncovered for around 45 minutes to 1 hour. Stir often else dal will stick to the bottom of the pot. You will also need to add water. I added a total of 1.5 cups water as the dal was simmering.

Step12: The longer you keep dal makhani to simmer, the better it tastes. When the gravy has thickened enough using back of the spoon mash some of the lentils to achieve that thick texture. Add salt as per taste (Do remember salt was also added in the boiled dal and rajma).

Step13: Add 2-3 tablespoon of cream (or as required), mix everything well and let the dal simmer for 3-4 minutes.

Make Tadka

Step14: In the meanwhile heat a tadka pan on medium flame. Pour 1 tablespoon butter (or ghee), once it is hot add chopped garlic and saute it for 1minute. Then add ginger julienne and slit green chilly and saute it for 30 seconds or until the garlic turns crispy.

Step15: Turn off the flame and add crushed Kasuri methi and 1/2 teaspoon red chili powder. Tadka is ready.

Step16: Dal will become really creamy by now. Sprinkle garam masala and garnish with coriander leaves. Mix it well. Turn off the flame. You may serve the dal at this point or do the additional step of giving it a smokey flavor by dhungar method (Since I was out of charcoal that’s the reason I haven’t used it, however, I will recommend doing it.)

Step17: Pour hot sizzling tadka on top. Garnish Dal Makhani with more cream and butter. Serve it with naan, roti, chapatis, or steamed rice. Enjoy!


  • Soak urad dal and rajma for at least 8 hours.
  • Here in the U.S, it takes very less time to pressure cook any lentils as it depends upon the type of water. If you are in India cook it for at least 4-5 whistle.
  • If you do not have a pressure cooker at home, you can cook the dal on the stovetop for 1.5 hrs and add more water.
  • Adding kidney beans is optional you may totally skip it.
  • Instead of tomato puree, you may also use store-bought tomato puree.
  • Adjust the amount of chilly as per your taste.
  • Butter is the key ingredient that brings amazing flavor.
  • To get the real taste of Dal Makhani I will suggest cooking it for at least 1 hour or so. The longer you cook the black beans, the creamier and flavorful they become.


Leave a Reply

Translate »
%d bloggers like this: