Dal Makhani

October 26, 2016
4 Ratings
Photo by Mark Weinberg
  • Serves 8
Author Notes

This is a recipe for one of the world’s finest dishes, which comes from Punjab. It takes exactly 142 minutes and 47 stirs to make, and it is worth every single one. Give it time and it will reward you handsomely with the most captivating, indulgent dal you’ve ever eaten, full of earthy, smoky flavors, rich deep tomato, and warm buttery notes.

You’ll need to soak the urad beans the night or morning before you want to eat it (6 hours is fine), and put it on the stove on a low heat a couple of hours before eating. Ask anyone passing by to give it a stir. This dal can also be made a day in advance.

This recipe is from my book Made in India (Flatiron 2015). —Meera Sodha

What You'll Need
  • 14 ounces urad dal
  • 4 tablespoons unsalted butter, plus 2 tablespoons to finish
  • 2 large onions, finely sliced
  • 1 3/4-inch piece ginger, peeled and grated
  • 10 cloves garlic, crushed
  • 6 tablespoons tomato paste
  • 1 3/4 teaspoons salt
  • 3/4 teaspoon nice red chili powder (or to taste)
  • 1 1/2 cups whole milk
  1. In a sieve, rinse the urad dal in a couple of changes of cold water, until the water runs clear, then drain and put into a deep pan—they will double in volume while soaking. Cover with a generous amount of just-boiled water and leave them to soak for at least 6 and up to 24 hours.
  2. Once they’ve finished soaking, rinse, drain, and put back into the pan. Cover them with cold water and bring to the boil, then continue boiling for 45 minutes. Scrape off any scum that forms on the top and discard.
  3. Meanwhile, put 4 tablespoons of butter into a frying pan on a medium heat. When it starts to foam, add the onions and cook for 15 minutes, then add the ginger and garlic. Fry for another 5 minutes. It’s not worth skimping on the time here: The longer you cook these (without burning), the more flavorful your dal will be. Add the tomato paste, salt, and chili powder, stir well, then take off the heat and set aside.
  4. Once boiled, the dal should be soft enough to crush against the side of the pan. When it is done, keep enough water in the pan to just cover them and drain the rest off. Add the onion and tomato mixture and the milk, bring to the boil, then turn the heat down to a simmer.
  5. Stir every now and then for around 1 1⁄2 hours. If the sauce starts to run low over time, top it up with an equal mixture of whole milk and water. The sauce will start to turn darker, richer and creamier. If the dal is not rich and dark after 1 1⁄2 hours, give it some more time: You can’t do this dish any harm by cooking it for a little longer.
  6. Taste, adjust the salt and chili if necessary, and add the remaining butter just before serving and stir. Serve alongside rice or hot fluffy naan.

See what other Food52ers are saying.

  • Regine
  • patrick
  • Christina Bogar
    Christina Bogar
  • Greenstuff

17 Reviews

Susan January 28, 2018
Has anyone tried using an Instant Pot for this recipe? If so, please share your wisdom!
Debraj76 August 5, 2019
I did this in the smaller Instant Pot tonight and it was terrific! I adapted as follows- 1. Halved the recipe. 2. Cooked the urad dal for 30 minutes on HP in IP with 1 t salt and 3 cups water. NR for almost 2 hrs (went to gym), then crushed a bit. 3. Proceeded with recipe, but instead of finishing on stovetop, added the sautéed onion mixture (which I DID do on the stovetop) and milk to IP for an additional 15 minutes with 10-15 minutes NR. Served over brown rice with turmeric roasted cauliflower.
Andrea February 9, 2017
The flavor was great but my dal never got as soft as I like. I added lots of extra time after the onion and tomato went in and no amount of time at that stage seemed to help, so my guess is that I should have left the dal on longer in the original boil and waited until they were almost as soft as I wanted in the final product. On the flavor front, my husband said that it tasted just like the dal makhani at his favorite north Indian restaurant.
Tracy January 27, 2017
Can anyone elaborate on what is meant by nice red chili powder? Just the standard chili powder?
Andrea February 9, 2017
I used red chili powder from the Indian grocery. The chili powder at my regular grocery is for making chili.
Tracy February 12, 2017
Oh, how I wish we had an Indian (or Thai, for that matter) grocery anywhere in our area. Closest ones are probably a 4 hour drive away!
Regine December 7, 2016
I just had this for lunch with rice. A very tasty dish, however, I wish my beans were much much softer. They are almost just "al dente" although I let the beans soak overnight for 24 hours and boiled it for way more than the 45 minutes or so in the instructions. I think I boiled it for maybe 2 hours. Maybe next time I will use a pressure cooker, or just place the beans in a slow cooker overnight. Thanks!
Regine December 6, 2016
My dish is now cooking for the last 11/2 hour or so as per instructions. I can see it is going to be super delicious (with rice...) but next time I may cut the garlic amount by half (thus 5 instead of 10). I will make another assessment of final product and let you know.
patrick November 26, 2016
No kidney beans or garam masala?
Christina B. November 2, 2016
Oh, WOW! I made this yesterday using my slow cooker. I'm not sure I have ever made anything more delicious. Warm, filling, just-right spicy -- the best possible thing to eat on a cold rainy night. I found urad dal at my neighborhood Chinese greengrocer's where I get all my vegetables. Thank you for the recipe!
Linda November 13, 2016
Would love to use my slow cooker for this. Would you please give me details on how you did yours? Did you still soak the dal prior to cooking? I'm assuming low heat but approximately how long? TIA!!
heidi October 30, 2016
use whole urad dal.Don't try to substitute for the urad dal - go to your closest Asian market, natural/organic type store, or online to and buy them. Amazon has them.
Carlynn H. October 30, 2016
I, too, am having a hard time figuring out the best bean to use. I think of "dal" as lentils, but don't see any black lentils at the market. There are black chick peas or black beans. Perhaps a visit to Jackson Heights would prove informative...
Regine October 28, 2016
Greenstuff, thanks so much. Will buy and try to make it this weekend.
gandalf October 27, 2016
This may be an odd question, but what would be the equivalent (North) American pulse for the urad bean, considering taste/texture/cooking properties? I was wondering whether there is a dried bean that I can more easily get my hands on that I could substitute for the urad bean.

Thanks in advance for any thoughts or insights you might have.
Regine October 27, 2016
I googled what urad dal is and looks like . But it appears there are whole and split urad dal, and some vary in color (?). Which one(s) do you recommend or does it matter? Thanks!
Greenstuff October 28, 2016
From the photo and her methods, I'd guess it's the small, whole black beans. At least that's what I'm going to use, as I already have some in my cupboard.