• Skip to main content
  • Skip to primary sidebar
Sinfully Spicy
menu icon
go to homepage
  • Recipes
  • About
  • Contact
  • Subscribe
    • Facebook
    • Instagram
    • Pinterest
    • TikTok
    • YouTube
  • subscribe
    search icon
    Homepage link
    • Recipes
    • About
    • Contact
    • Subscribe
    • Facebook
    • Instagram
    • Pinterest
    • TikTok
    • YouTube
  • ×
    Home » Recipes » Main Dishes » Dal
    5 from 4 votes

    Punjabi Dal Makhani Recipe

    Modified: Jan 15, 2024 · Published: Mar 5, 2015 by Tanvi Srivastava 1 Comment

    Jump to Recipe

    This post may contain affiliate links.

    Dal makhani is a quintessential dish in North Indian cuisine, particularly popular in Punjab. It's a creamy lentil preparation where whole black urad dal (lentils) are simmered slowly with onions, tomatoes, ginger, garlic, and a mix of spices until they become luxuriously creamy.

    This slow cooked lentil stew dish is known for its velvety texture and deeply satisfying flavors. Deeply comforting & delicious, you are going to love this dal makhani recipe. Best enjoyned with indian flatbreads such as naan and tandoori rotis.

    Punjabi Dal Makhani served in a black bowl and drizzled with heavy cream.

    It is impossible to imagine Indian cuisine without dal or lentils. Lentils are a staple in our homes and a loved component of our everyday meals.

    Black lentils are a craze in north india. Though I love all kinds of dal, however whole black lentils are my most favorite. In the past, I have shared many punjabi dal recipes made with black lentils or brown lentils such as langar wali dal, dal bukhara, dal maharani and sabut masoor dal.

    Dal Makhani literally translates to "buttery lentils". People often mistake that dal makhani has tons of butter added to make it buttery, however the "makhani" refers to the buttery texture that the lentils achieve after long and slow cooking. Butter is definitely added to the lentils to accentuate the comforting buttery taste profile.

    Dal Makhani is slow cooked whole urad dal (sabut kali urad), red kidney beans(rajma), butter, aromatic spices, kasuri methi(dry fenugreek leaves) and finished with heavy cream. Traditional dal makhani is cooked over wood or coal fire and the lentils sometimes simmer for hours or even overnight to achieve a thick & creamy texture.

    Growing up, dal makhani meant special occasions. It wasn't an everyday thing.Mom would make it on on birthdays, anniversaries or when we had family gatherings. She would also make her tawa no yeast naan or tandoori rotis alongside.

    Trust the Process

    To make velvety dal makhani, it takes a bit of time and effort. The process of making dal makhani goes beyond the "everyday" pressure cook and temper lentils. It needs a bit of planning and patience. As you make it more and more, slowly you will learn from experience when the lentils have cooked just about right and are not mushy. It took me some time to get a hang of it.

    A lot of steps in this recipe can be done a day ahead. You can pressure cook the lentils and keep them refrigerated for 1-2 days. You can fire roast the onions and tomatoes one day ahead too. If you plan slightly, it makes the entire process quick and easy.

    My Recipe

    Over a decade back, I saw a chef on TV show using this method of charring the onions, garlic and tomatoes on open fire and then using it in tadka of dal makhani. He fire roasted the onion, tomatoes and garlic till the skins were charred and the insides were soft and pulpy. Then he made a coarse paste of onions and tomatoes and used it. I tried his method and it stuck with me. Here are some reasons I like it.

    1. Fire roasting and then grinding eliminates the need to hand chop onion & tomatoes. We are going to making a coarse paste- don't blend too much.
    2. There's something about fire roasting vegetables! Open fire roasting contributes to a difference in taste of dal as compared to browning chopped raw onions, garlic & tomatoes separately in butter. I feel that the charred bits definitely add to the smokiness of the dal.
    Dal makhani served in a black bowl and plated with rice and onions.

    5 Top Tips for Best Dal Makhani

    1. Soak The Lentils - Soaking sabut urad dal and rajma softens their skin and the grains swell. This not only reduces the cooking time but also the lentils cook out creamier. I have never cooked unsoaked urad lentils and I don't recommend.
    2. Slow Cook & Simmer - Slow-cooking the lentils makes them develop creamy consistency naturally since the startches in the lentils slowly release. Slow cooking also allows the flavors of different spices that we going add, to blend togther in a cohesive way.
    3. Regular Stirring - Urad lentils tend to become sticky as they cook. Stirring the dal while it cooks helps prevents dal from sticking or scorching at the bottom of the pot. Secondly, stirring helps break down the lentils, creating a creamier consistency. You also get to feel and monitor the consistency of dal when you stir while it slow cooks.
    4. Don't go overboard on Onion & Garlic - The prominent taste in dal makhani should be that of dal. Too much onion and garlic can get overpowdering and mask the flavor of lentils. We want to use them to complement the flavor of the lentils. Also don't grind the onion or garlic to a fine paste else they become too strong.
    5. Be light handed with spices - A well made dal makhani is all about simplicity! Similar to onion & garlic, spices can also get overwhelming pretty easily and dominate the natural taste of lentils. We want a hint of spices in dal makhani.

    More Tips

    1. Use Tomato Puree - For that restaurant style dal makhani taste, use a little bit of canned tomato sauce or tomato puree(in india). Tomato puree gives a smoother texture to dal makhani as well as enhances the color of dal. I use a combination of fresh tomatoes and canned tomato sauce.
    2. Don't skimp on butter - Dal makhani is a rich & comforting dish thanks to butter. Salted butter gives savory flavor to the dal. If you will use less butter, that luxurious & indulgent mouthfeel of dal makhani will be missing.
    3. Don't make it sweet - When it comes to such creamy punjabi dishes, people often confuse them to be sweet. Authentic dal makhani is rich & savory. Sweetness is not the intended taste profile of this creamy dal. 
    4. Make it Ahead - I highly recommend making dal makhani a few hours ahead of when you plan to serving. A day ahead is even better. Dal Makhani tends to thicken as it sits and the texture is improved immensely. Also, all the flavors are absorbed beautifully.

    Ingredients

    • Whole Black Urad Dal- These lentils are the key ingredient for making dal makhani. In Hindi, these are called sabut kali urad. You can easily purchase from any south asian or indian grocery stores. Whole urad dal is also available on amazon.
    • Whole Spices - cinnamon stick, bay leaf (not pictured), black cardamom & cumin seeds
    • Ground Spices -  kashmiri red chili powder(or use paprika powder), red chili powder (or cayenne pepper), pinch of hing(asafoetida), garam masala powder
    • Tomatoes - I use combination of fresh tomatoes and bit of store bought tomato sauce for the restaurant style taste. 
    • Kasuri methi - Punjabi dishes are incomplete without a sprinkle of kasuri methi(kasoori methi). If you cannot find these dry fenugreek leaves, simply skip them since there is no substitute.
    • Ghee - Urad dal becomes sticky as it cooks. A little ghee if added during boiling the lentils prevents the grains from sticking to each other and the pot.
    • Other Ingredients- ginger julinnes, garlic paste, salted butter, salt, heavy cream, tiny pinch of grated nutmeg
    Ingredients for boiling the black lentils.
    Ingredients for tempering the boiled black lentils.

    Instructions

    Pressure Cook The Lentils

    (This can be done a day ahead)

    • Soak the black urad lentils and kidney beans in enough water for atleast 12-18 hours. The lentil is pretty tough and depending on ambient temperature it might take 18-24 hours for the lentils to soak properly. You should be able to break a grain of soaked lentils between your index finger and thumb- that's how you know thats its rightly soaked.
    • Drain and add the soaked the dal and rajma to a pressure cooker along with water, chopped ginger & garlic, hing, salt, ghee, cinnamon and black cardamom.
    • Pressure cook the lentils on medium heat for 2-3 whistles, then reduce to low and let cook for about 10-15 minutes. Switch off the stove and then let the pressure release naturally. 
    • Open the pressure cooker lid. The lentils should hold shape, their skins slightly cracked and the grains tender(easily mushed). While the lentils are still hot, with the help of masher or back of a spoon, mash slightly. Do not mash at length else the lentils will become sticky instead of creamy. If you feel that the lentils are slightly tough to mash, pressure cook for another 1-2 whistles on medium.
    Soaked lentils and beans in a black pressure cooker with spices.
    Adding water to soaked lentils for pressure cooking.

    Temper The Dal

    • While the lentils are cooking, fire roast the onion, garlic and tomatoes. Roast till the skins are charred. I use a small perforated pan which can be used on stove but you can roast them on the stove directly similar to how we roast eggplant for baingan bharta.
    • Once roasted,let cool and peel off the skin of onion & garlic. Add everything to a food processor and blend to make a coarse paste without adding water. (This paste can be made a day ahead as well).
    Charred onions and tomatoes on a metal pan.
    A coarse paste made of charred oniins, tomatoes and garlic.
    • In a heavy bottom cooking pot (4 qt or larger) or kadhai (indian wok), heat up the butter and oil on low heat. Crackle the cumin seeds. Add the kashmiri chilli powder and fry on low heat for a few seconds taking care not to burn.
    Crackling cumin seeds in hot butter and oil.
    Adding kashmiri red chilli powder to hot butter.
    • Add the onion-tomato paste that we made earlier and canned tomato sauce(or tomato puree). Fry on low medium heat for 3-4 minutes or till you see oil seperating and the color darkening to deep red.
    Adding crushed onion tomato paste, tomato sauce to the butter.
    Cooked tomato masala until oil sepeartes.
    • Now, add the lentils to the pot along with ginger julinnes. Taste and adjust the salt.Mix well.

    Slow Cook Dal Makhani

    • Add hot water before we set dal to slow cook. I add about ¾ cup water. Adjust depending on the desired consistency, however do not make it too runny.
    Mixing boiled dal & ginger with oniion tomato masala.
    Adjust salt & water in dal.
    • Bring the dal to a slow boil and then reduce the heat to low. Let simmer for about 30-35 minutes. Stir from time to time while the dal is slow cooking. The lentils will thicken and the flavors will develop.
    • Once the lentils have slow cooked enough, finish with kasuri methi, garam masala, a little bit of freshly grated nutmeg, a few tablespoons of butter and heavy cream.
    Slow cooking dal makhani on low heat.
    Finishing dal makhani with heavy cream, garam masala and kasuri methi.
    Dal makhani in a black ladle.
    • Let simmer on low heat (don't let boil after you've added cream) for another 10 -12 minutes.
    • Smoky flavor - If desired, smoke the dal using dhungar method. Place the bowl on top of dal. Heat up a piece of charocal over open fire. Place the hot coal in the bowl. Drizzle ghee over the hot charcoal. Immediately cover and let smoke for maximun 1-2 minutes else smoky flavor will get overpowering. It is similar to how I smoke dal bukhara.
    • Let the dal rest for atleast 30 minutes before serving. They get better as they sit.
    • Garnish with little heavy cream, chopped cilantro, green chillies or ginger (if desired) before serving.

    Serving

    • Serve dal makhani with indian flatbreads like soft and doughy naan or crisp charred tandoori rotis or flaky plain parathas.
    • If you prefer rice, serve with plain steamed basmati rice, jeera rice, pulao or biryani.
    • Accompainments - Serve sliced onions, papaddams, kachumber, garlic pickle, green chutney or raita for a hearty meal.
    • Party Menu Idea - For a vegetarian indian feast, serve dal makhani with dishes like paneer biryani, shahi paneer korma and dum aloo.
    A bowl of rice topped with ladles of makhani lentils, green chili and onion.

    Storing & Reheating

    • Refrigerator: Cool down dal makhani to room temperature and transfer it to an airtight container. Consume the refrigerated dal within 3-4 days for best freshness.
    • Freezing - If you wish to freeze dal makhani,dont add heavy cream. Cool down the dal completely, portion it and freeze using airtight containers or freezer bags for 3-4 weeks.

    Reheating - It is natural for dal to thicken as you store it. You can adjust the consistency using water or heavy cream. You may reheat over stove or in microwave. Heat over medium-low heat on stove, stirring occasionally. Add a dollop of butter or splash of heavy cream once hot. You could microwave for 20-30 seconds, stir 1-2 times in between. For frozen dal, add the frozen dal to a sauce pan, add ¼ cup water and heat up. Once hot, add heavy cream and butter to finish the dal.

    I originally published this recipe in March 2015. I updated this post in January 2024 with lots of extra tips and tricks that I have learned in the past 9 years. The recipe is more or less the same but I have added detailed instruction steps. I have also included step by step process shots for better understanding the texture and color of the dal in different stages of cooking.

    Dal Makhani Featured Image.

    Punjabi Dal Makhani Recipe

    Tanvi Srivastava
    Creamy punjabi whole black gram (urad) & kidney beans (rajma) lentil dish best served with naan.
    5 from 4 votes
    Print Recipe Pin Recipe
    Prep Time 20 minutes mins
    Cook Time 1 hour hr
    Total Time 1 hour hr 20 minutes mins
    Course Main Course
    Cuisine Indian
    Servings 5 servings
    Calories 294 kcal

    Ingredients
      

    For Cooking the lentils

    • ¾ cup sabut urad dal whole black gram lentils
    • ¼ cup rajma red kidney beans
    • 1 tablespoon ghee
    • 1 tablespoon ginger finely chopped
    • ½ tablespoon garlic clove finely chopped
    • 1 bay leaf
    • ½ inch cinnamon stick
    • 1 small black cardamom skip if you dont have
    • ¼ teaspoon asafetida hing, skip if not available
    • 3 cup water plus more if needed
    • ½ teaspoon salt

    For Tempering the lentils

    • 1 medium onion
    • 2 medium tomatoes
    • 2 garlic cloves
    • 1 tablespoon neutral oil
    • 3 tablespoon butter
    • ½ teaspoon cumin seeds
    • 1 teaspoon kashmiri chili powder or paprika
    • ½ teaspoon red chili powder or cayenne (hot) adjust to tolerance
    • 2 tablespoon tomato sauce or tomato puree
    • 2 inch ginger julienned
    • ¾ teaspoon salt adjust to taste
    • 1.5 teaspoon kasuri methi crushed, dry fenugreek leaves, available at indian grocery stores
    • ⅛ teaspoon nutmeg powder freshly grated
    • ½ teaspoon garam masala powder
    • 2 tablespoon butter
    • ⅓ cup heavy cream more or less depending on how creamy you want

    Instructions
     

    PRESSURE COOK THE LENTILS (This can be done a day ahead)

    • Soak the black urad lentils and kidney beans in enough water for atleast 12-18 hours. This lentil is pretty tough and depending on ambient temperature it might take up to 18- 24 hours for the lentils to soak properly.
    • Drain and add the soaked the dal and rajma to a pressure cooker along with water,chopped ginger & garlic, hing, salt, ghee, cinnamon and black cardamom.
    • Pressure cook the lentils on medium heat for 2-3 whistles, then reduce to low and let cook for about 10-15 minutes. Switch off the stove and then let the pressure release naturally. 
    • Open the pressure cooker lid. The lentils should hold shape, their skins slightly cracked and the grains tender(easily mushed). While the lentils are still hot, with the help of masher or back of a spoon, mash slightly. If you feel that the lentils are slightly tough to mash, pressure cook for another 1-2 whistles on medium.

    TEMPER THE DAL

    • While the lentils are cooking, fire roast the onion, garlic and tomatoes. Roast till the skins are charred. I use a small perforated pan which can be used on stove but you can roast them on the stove directly.
    • Once roasted,let cool and peel off the skin of onion & garlic. Blend with tomato to make a coarse paste without adding water. (This paste can be made a day ahead as well).
    • In a heavy bottom cooking pot or kadhai(indian wok), heat up the butter and oil on low heat. Crackle the cumin seeds. Add the kashmiri chilli powder and fry on low heat for a few seconds taking care not to burn.
    • Add the onion-tomato paste that we made earlier and tomato sauce(or tomato puree). Fry on low medium heat till you see oil seperating and the color darkening to deep red.
    • Now, add the lentils to the pot along with ginger julinnes. Taste and adjust the salt.Mix well.

    SLOW COOK DAL MAKHANI

    • Add hot water before we set dal to slow cook.I add about ¾ cup water. Adjust depending on the desired consistency, however do not make it too runny.
    • Bring the dal to a slow boil and then reduce the heat to low. Let simmer for about 30-35 minutes. Stir from time to time while the dal is slow cooking. The lentils will thicken and the flavors will develop.
    • Once the lentils have slow cooked enough, finish with kasuri methi, garam masala, a little bit of freshly grated nutmeg, a few tablespoons of butter and heavy cream.
    • Let simmer on low heat (dont let boil after you've added cream) for another 10 -12 minutes.
    • Smoky flavor - Smoke the dal using dhungar method. Place a small bowl on top of dal. Heat up a piece of charocal over open fire. Place the hot coal in a bowl. Drizzle ghee over the hot charcoal. Immediately cover and let smoke for maximun 1-2 minutes else smoky flavor will get overpowering. It is similar to how I smoke dal bukhara.
    • Let the dal rest for atleast 30 minutes before serving. They get better as they sit.
    • Garnish with little heavy cream, chopped cilantro, green chillies or ginger (if desired) before serving.

    Notes

    5 TOP TIPS FOR BEST DAL MAKHANI
    1. Soak The Lentils - Soaking sabut urad dal and rajma softens their skin and they swell. This not only reduces the cooking time but also the lentils cook out creamier. I have never cooked unsoaked urad lentils and I don't recommend.
    2. Slow Cook & Simmer - Slow-cooking and simmering the lentils makes them develop creamy consistency naturally since the startches in the lentils slowly release. Slow cooking also allows the flavors of different spices that we add to blend togther in a cohesive way.
    3. Regular Stirring - Urad lentils tend to become sticky as they cook. Stirring the dal while it cooks helps prevents dal from sticking or scorching at the bottom of the pot. Secondly, stirring helps break down the lentils, creating a creamier consistency. You also get to feel and monitor the consistency of dal when you stir while it slow cooks.
    4. Don't go overboard on Onion & Garlic - The prominent taste in dal makhani should be that of dal. Too much onion and garlic can get overpowdering and mask the flavor of lentils. We want to use them to complement the flavor of the lentils. Also dont grind the onion or garlic else they become too strong.
    5. Be light handed with spices - A well made dal makhani is all about simplicity. Similar to onin & garlic, spices can also get overwhelming pretty easily and dominate the natural taste of lentils. We want a hint of spices in dal makhani.
    Refer to the blog post for additional  tips. 
    STORING & REHEATING
    • Refrigerator: Cool down dal makhani to room temperature and transfer it to an airtight container. Consume the refrigerated dal within 3-4 days for best freshness.
    • Freezing - If you wish to freeze dal makhani,dont add heavy cream. Cool down the dal completely, portion it and freeze using airtight containers or freezer bags for 3-4 weeks.
    • Reheating - It is natural for dal to thicken as you store it. You can adjust the consistency using water or heavy cream.You may reheat over stove or in microwave. Heat over medium-low heat on stove, stirring occasionally. Add a dollop of butter or splash of heavy cream once hot. You could microwave for 20-30 seconds, stir 1-2 times in between. For frozen dal, add the frozen dal to a sauce pan, add ¼ cup water and heat up. Once hot, add heavy cream and butter to finish the dal.
    Serving Ideas
      • Serve dal makhani with indian flatbreads like soft and doughy naan or crisp charred tandoori rotis or flaky plain parathas.
      • If you prefer rice, serve with plain steamed basmati rice, jeera rice, pulao or biryani.
      • Accompainments - Serve sliced onions, papaddams, kachumber, garlic pickle, green chutney or raita for a hearty meal.
      • Party Menu Idea - For a vegetarian indian feast, serve dal makhani with dishes like paneer biryani, shahi paneer korma and dum aloo

    Nutrition

    Calories: 294kcalCarbohydrates: 24gProtein: 9gFat: 19gSaturated Fat: 7gPolyunsaturated Fat: 3gMonounsaturated Fat: 8gTrans Fat: 1gCholesterol: 29mgSodium: 493mgPotassium: 285mgFiber: 8gSugar: 3gVitamin A: 763IUVitamin C: 14mgCalcium: 63mgIron: 3mg
    Tried this recipe?Let us know how it was!
    DalLentils

    More Dal

    • Masoor Dal featured Image.
      Simple Masoor Dal Recipe (Spiced Red Lentils)
    • Mango Dal Featured Image.
      Mango Dal (Aam Dal)
    • Featured Imaged of Punjabi Methi Dal.
      Methi Dal
    • ITC Dal Bukhara Featured Image.
      Dal Bukhara Recipe

    Share This Recipe

    • Facebook
    • X
    • Email

    Reader Interactions

    Comments

      5 from 4 votes (4 ratings without comment)

      I'd Love to Hear from You! Cancel reply

      If you tried this recipe, please leave a star rating and share your feedback below. Your input helps me refine my recipes and guides others too. As always, thank you so much for your support!

      Thank you,
      Tanvi

      Your email address will not be published. Required fields are marked *

      Recipe Rating




    1. Nipa

      November 19, 2020 at 12:46 pm

      Thank you for sharing this recipe and this a firm favourite in my home

      Reply

    Primary Sidebar

    Hi, I'm Tanvi! If you love Indian food, you are at the right place, browse through hundreds of delicious Indian recipes

    More about me ?

    Popular

    • Chilli Paneer Featured Image.
      Street Style Chilli Paneer
    • Paneer Burger Featured Image.
      Crispy Pakora Crusted Paneer Burger (Air Fryer)
    • Tandoori Shrimp Tikka featured Image.
      Pan fried Tandoori Shrimp Tikka (Air fryer Option)
    • Pistachio Tiramisu Featured Image.
      Pistachio Tiramisu (Raw Eggfree, No Coffee)
    • Mango Rice Pudding Featured Image.
      Creamy Mango Rice Pudding (Mango Kheer)
    • Bhindi Masala Featured Image.
      Dhaba Style Bhindi Masala Recipe

    Looking for Something?

    Footer

    back to top

    Links

    • Recipe Index
    • Privacy Policy
    • Editorial Policies

    Free Recipe Book

    • Sign Up! to get your e-copy!

    About

    • About Me

    Copyright © 2025 Sinfully Spicy

    Rate This Recipe

    Your vote:




    A rating is required
    A name is required
    An email is required

    Recipe Ratings without Comment

    Something went wrong. Please try again.