Dal Makhani Recipe (Authentic Punjabi Style) Recipe
Introduction
Dal Makhani is a rich and creamy lentil dish from Punjab, loved for its buttery texture and smoky flavor. Made with whole urad dal and rajma, this hearty recipe is perfect for a comforting meal that impresses with every bite.

Ingredients
- ¾ cup (140 grams) whole urad dal (whole black gram)
- ¼ cup (40 grams) rajma (kidney beans)
- 3 cups water (for pressure cooking)
- 3 tablespoons butter (salted or unsalted)
- ½ teaspoon cumin seeds
- 2 to 3 cloves
- 2 to 3 green cardamoms
- 1 black cardamom
- 1 inch cinnamon stick
- 1 tej patta (Indian bay leaf)
- ½ cup (50 grams) onions, finely chopped
- 1 teaspoon to 2 green chilies, chopped (or use serrano peppers)
- 2 teaspoons ginger garlic paste
- 200 grams (2 large) tomatoes, roughly chopped and pureed or 1 cup tomato puree
- ½ teaspoon red chili powder (or cayenne pepper or smoked paprika)
- 2 to 3 pinches nutmeg, grated or ground
- 1 cup water (or as needed)
- ¼ to ⅓ cup light cream (25% to 30% fat) or half & half or 2 tablespoons whipping/heavy cream
- ¼ teaspoon dry fenugreek leaves (kasuri methi), crushed (optional)
- Salt, to taste
- 1 small piece charcoal
- ½ to ⅔ teaspoon oil (neutral tasting)
- 1 to 2 tablespoons chopped coriander leaves (cilantro)
- 1 tablespoon light cream or a few teaspoons whipping cream (optional, for garnish)
- 1 inch ginger, julienne (optional, for garnish)
Instructions
- Step 1: Soak the whole urad dal and rajma in enough water for 8 to 9 hours or overnight. Drain and rinse them well before cooking.
- Step 2: Add the soaked lentils to a pressure cooker with 3 cups water. Pressure cook on high flame for 18 to 20 whistles or until soft. If needed, add ½ cup water and cook for 4 to 5 more whistles. The dal should be soft enough to melt in your mouth.
- Step 3: Blend the chopped tomatoes into a smooth puree, or use ready-made tomato puree.
- Step 4: Heat butter in a pan over medium-low heat. Add cumin seeds, cloves, green cardamoms, black cardamom, cinnamon, and tej patta. Fry until aromatic.
- Step 5: Add the finely chopped onions and sauté on low-medium heat until they turn light golden.
- Step 6: Stir in the ginger garlic paste and cook until the raw smell disappears. Add chopped green chilies and sauté for another minute.
- Step 7: Pour in the tomato puree. Add red chili powder and nutmeg, mixing well. Cook on low-medium heat until oil or butter begins to separate from the mixture.
- Step 8: Add the cooked lentils and rajma with their cooking liquid. Add 1 cup water or as needed. Mix well and simmer uncovered on low heat, stirring often to prevent sticking.
- Step 9: Once thickened, season with salt and continue simmering for about 25 minutes, stirring occasionally. Add water if the dal becomes too thick.
- Step 10: Stir in cream and crushed fenugreek leaves (kasuri methi) if using. Mix well and turn off the heat.
- Step 11 (Optional – Dhungar Method): Heat a small piece of charcoal directly on the flame until red hot. Place it in a small bowl, pour ½ teaspoon oil over it, and immediately set the bowl on top of the dal. Cover and let it infuse smoke for 1 minute, then remove the bowl and stir the dal well.
- Step 12: Garnish Dal Makhani with chopped coriander leaves, a few teaspoons of cream, and optionally julienned ginger. Serve hot with naan, roti, paratha, or steamed rice.
Tips & Variations
- Soaking the lentils overnight ensures they cook faster and become creamy.
- For extra smoky flavor, don’t skip the dhungar (smoke) method—it’s traditional and adds depth.
- Use fresh cream for a richer taste or substitute with half & half to lighten the dish.
- Add a pinch of garam masala at the end for additional warmth and aroma.
- Adjust green chilies to control the heat level according to your preference.
Storage
Store Dal Makhani in an airtight container in the refrigerator for up to 3 days. Reheat gently on the stovetop, adding a splash of water or cream if it appears too thick. The flavor improves the next day, making it a great make-ahead dish.
How to Serve

Serve this delicious recipe with your favorite sides.
FAQs
Can I use canned beans instead of dried lentils?
Yes, you can use canned kidney beans and black gram, but the texture and flavor may differ slightly. Rinse canned beans well and reduce cooking time accordingly.
Is there a vegan version of Dal Makhani?
Absolutely. Replace butter with oil or vegan margarine and use coconut cream or cashew cream instead of dairy cream for a vegan-friendly alternative.
Print
Dal Makhani Recipe (Authentic Punjabi Style) Recipe
- Total Time: 9 hrs 25 mins (including soaking)
- Yield: 4 servings 1x
- Diet: Vegetarian
Description
Dal Makhani is an authentic Punjabi-style rich and creamy lentil dish featuring whole urad dal and rajma slow-cooked with aromatic spices, tomato puree, butter, and cream. This comforting Indian classic is made with a blend of whole spices and finished with the traditional dhungar smoking method to infuse a subtle smoky flavor, perfect for pairing with naan, roti, paratha, or steamed rice.
Ingredients
Lentils and Beans
- ¾ cup (140 grams) whole urad dal (whole black gram)
- ¼ cup (40 grams) rajma (kidney beans)
- 3 cups water (for pressure cooking)
Spices and Whole Aromatics
- ½ teaspoon cumin seeds
- 2 to 3 cloves
- 2 to 3 green cardamoms
- 1 black cardamom
- 1 inch cinnamon stick
- 1 tej patta (Indian bay leaf, small to medium-sized)
Base and Flavorings
- ½ cup (50 grams) onions, finely chopped
- 1 teaspoon ginger garlic paste
- 2 to 3 green chilies, chopped (or serrano peppers)
- 200 grams (2 large) tomatoes, roughly chopped and pureed or 1 cup tomato puree
- ½ teaspoon red chili powder (or cayenne pepper, smoked paprika)
- 2 to 3 pinches nutmeg, grated or ground
Liquids and Fats
- 3 tablespoons butter (salted or unsalted)
- 1 cup water (or as needed)
- ¼ to ⅓ cup light cream (25% to 30% fat) or half & half or 2 tablespoons heavy whipping cream
- ½ to ⅔ teaspoon neutral tasting oil
Finishing and Garnish
- ¼ teaspoon dry fenugreek leaves, crushed (kasuri methi), optional
- Salt to taste
- 1 small piece charcoal (for dhungar smoking, optional)
- 1 to 2 tablespoons chopped coriander leaves (cilantro)
- 1 tablespoon light cream or a few teaspoons whipping cream (optional)
- 1 inch ginger, julienne (optional)
Instructions
- Soak Lentils: Rinse whole urad dal and rajma well, then soak them overnight (8-9 hours) in enough water. Drain well the next day.
- Pressure Cook Lentils: Rinse lentils a couple of times, drain, and place in a 3 liter pressure cooker. Add 3 cups water and cook on high flame for 18-20 whistles until thoroughly soft. If undercooked, add ½ cup more water and cook for 4-5 additional whistles. The urad dal should melt in the mouth and the rajma should be soft with no bite. Set aside.
- Prepare Tomato Puree: Blend chopped tomatoes into a smooth puree in a blender or use ready-made tomato puree.
- Sauté Whole Spices: Heat butter in a pan over medium-low heat. Add cumin seeds, cloves, green cardamoms, black cardamom, cinnamon stick, and tej patta. Fry until aromatic and spices sputter.
- Sauté Aromatics: Add finely chopped onions and cook on low to medium-low heat until light golden. Add ginger garlic paste and sauté until raw smell disappears. Then add chopped green chilies and cook for one minute.
- Add Tomato and Spices: Stir in tomato puree, red chili powder, and grated nutmeg. Cook on low to medium heat until fat starts to release from sides.
- Add Lentils and Simmer: Add cooked urad dal and rajma along with their stock, plus 1 cup water or as needed. Mix well and simmer uncovered on low heat, stirring frequently to prevent sticking. Once thickened slightly, add salt to taste.
- Slow Cook Dal: Continue to simmer on low heat for about 25 minutes, stirring occasionally. Add more water if the consistency is too thick. The slow cooking develops deep flavors.
- Add Cream and Fenugreek: Stir in cream until well blended. Turn off heat, crush and add dried fenugreek leaves (kasuri methi), then mix well.
- Dhungar Smoking (Optional): Place a flameproof rack on stove over low/medium-low flame. Heat a small piece of charcoal until red hot using tongs. Place the hot charcoal in a small bowl, pour ½ teaspoon oil over it, and immediately place the bowl over the dal. Cover and let smoke infuse for one minute, then remove charcoal and stir dal.
- Garnish and Serve: Garnish with chopped coriander leaves, a drizzle of cream, and optionally ginger juliennes. Serve hot with naan, roti, paratha, or steamed rice.
Notes
- Soaking lentils overnight ensures even cooking and softness.
- Use a pressure cooker to reduce cooking time for lentils and beans.
- Adjust water quantity during slow cooking to achieve desired consistency—medium thickness is ideal.
- The dhungar method adds a traditional smoky flavor but is optional.
- Kasuri methi (dried fenugreek leaves) adds a distinctive aroma and should not be skipped if possible.
- Butter and cream contribute to the rich and velvety texture classic to Dal Makhani.
- This dish tastes better the longer it is simmered, allowing flavors to meld.
- Serve with Indian breads or steamed rice for a complete meal.
- Prep Time: 10 mins plus 8-9 hours soaking
- Cook Time: 1 hr 15 mins (including pressure cooking and simmering)
- Category: Main Course
- Method: Stovetop
- Cuisine: Indian
Keywords: Dal Makhani, Punjabi Dal, Indian Lentils, Kidney Beans Recipe, Slow Cooked Lentils, Indian Main Course, Authentic Punjabi Recipe

