CurriesDalsvegetariangluten free

Dal Makhani

Creamy, smoky black lentil dal simmered for hours with butter and cream. The ultimate Punjabi comfort food, restaurant-style.

दाल मखनी

R
RasoiSecretsApril 1, 2026
🕐20 minPREP
🔥4 hrCOOK
4 hr 20 minTOTAL
🍽4SERVES
📊MediumLEVEL
SPICE
🌶️🌶️🌶️🌶️
Share
Creamy dal makhani in a copper bowl garnished with cream swirl and fresh cilantro

Dal Makhani is the crown jewel of Punjabi cuisine. This rich, creamy black lentil dal has been simmered in kitchens across Punjab for generations, and for good reason -- it is one of the most satisfying vegetarian dishes on earth. The secret? Time. There is no shortcut to great dal makhani. The whole black lentils (urad dal) and kidney beans need to cook low and slow until they break down into a velvety, deeply flavored gravy.

This post may contain affiliate links. As an Amazon Associate, we earn from qualifying purchases. Learn more.

Ingredients

Click to check off as you go

Serves

Ingredients

1 cupwhole black lentils (urad dal sabut)
¼ cupkidney beans (rajma)
4 tbspbutter
2 tbspoil or ghee
1 largeonion, finely chopped
3 mediumtomatoes, pureed
1 tbspginger-garlic paste
1 tspred chili powder
1 tspgaram masala
to tastesalt
½ cupheavy cream
1 tbspkasuri methi (dried fenugreek leaves)
4 cupswater

Method

1
8+ hr
💧

Soak overnight

Soak the whole black lentils and kidney beans in plenty of water overnight (at least 8 hours). Drain and rinse.

2
15-20 min
♨️

Pressure cook

Pressure cook the soaked lentils and kidney beans with 4 cups of water and a pinch of salt. Cook for 15-20 minutes (about 5-6 whistles). The lentils should be soft but not mushy.

3
15-20 min
🧅

Brown the onions

In a heavy-bottomed pot, heat 2 tbsp butter and 2 tbsp oil. Add the finely chopped onion and cook on medium heat until deep golden brown, about 15-20 minutes. Do not rush this step.

4
10 min
🍅

Build the masala

Add ginger-garlic paste and cook for 1-2 minutes until fragrant. Add the pureed tomatoes, red chili powder, and salt. Cook until the oil separates from the masala, about 8-10 minutes.

5
🥣

Combine

Add the cooked lentils along with their cooking liquid to the masala. Stir well and bring to a gentle simmer.

6
2-3 hr
🔥

Slow simmer

Simmer on the lowest flame for 2-3 hours, stirring occasionally. The dal should become thick, creamy, and dark. Use the back of a spoon to mash some lentils against the side of the pot.

7
15 min
🧈

Finish with cream

In the last 15 minutes, add garam masala, cream, remaining 2 tbsp butter, and crushed kasuri methi. Stir well.

8

Serve

Serve hot, garnished with a swirl of cream, a pat of butter, and fresh cilantro. Best enjoyed with butter naan or jeera rice.

Tips for Success

Low and slow

The secret to restaurant-style dal makhani is patience. Low flame for at least 3 hours. You cannot rush this dish.

Crush the kasuri methi

Rub dried fenugreek leaves between your palms before adding to the dal. This releases maximum aroma and flavor.

Overnight soak

Do not skip the overnight soak. Under-soaked lentils will not break down properly and the dal will have a grainy texture.

Nutrition

Per serving (approximate)

380
Calories
18g
Protein
42g
Carbs
16g
Fat
12g
Fiber

Nutrition values are approximate and may vary based on ingredients and portion sizes.

Best Served With

butter naanjeera ricecucumber raita

Rate This Recipe

Loved this recipe? Get one like it every week.

Join our newsletter for authentic Indian recipes, cooking tips, and cultural stories.