Dal Butter Masala Recipe: Creamy Restaurant-Style Dal Makhani

Updated November 5, 2026

Total time
1 hr 35 min
prep 20 min · cook 1 hr 15 min
Serves
6
portions as written

Jump to recipe

Dal Butter Masala Recipe: Creamy Restaurant-Style Dal Makhani

Dal Butter Masala, often called Dal Makhani, is a beloved North Indian dish of black urad dal and kidney beans simmered low and slow with butter, cream, and a blend of aromatic spices. This version delivers that rich, velvety texture and deep, smoky flavor you crave from a restaurant, using a practical stovetop method that fits into a weeknight. It works because the combination of slow simmering, a final tempering of spices in butter, and a touch of cream creates a deeply satisfying and complex dish.

Ingredients

  • 1 cup (200 g) whole black urad dal (sabut urad), rinsed and soaked for at least 4 hours or overnight
  • 1/4 cup (50 g) dried kidney beans (rajma), rinsed and soaked with the urad dal
  • 4 cups (960 ml) water, plus more as needed
  • 1 teaspoon salt, divided
  • 3 tablespoons (42 g) unsalted butter, divided
  • 1 tablespoon (15 ml) vegetable oil or ghee
  • 1 large yellow onion (about 150 g), finely chopped
  • 1 tablespoon (15 g) ginger-garlic paste (or 1 tbsp grated ginger + 1 tbsp minced garlic)
  • 1-2 green chilies, slit lengthwise (adjust to taste)
  • 2 large tomatoes (about 300 g), pureed or finely grated
  • 1 teaspoon Kashmiri red chili powder (or 1/2 tsp regular chili powder)
  • 1/2 teaspoon ground turmeric
  • 1 teaspoon ground coriander
  • 1/2 teaspoon garam masala
  • 1/2 cup (120 ml) heavy cream, plus more for garnish
  • 1 tablespoon dried fenugreek leaves (kasuri methi), crushed
  • Fresh cilantro, chopped, for garnish

Instructions

  1. Cook the lentils and beans: Drain the soaked urad dal and kidney beans. Place them in a large heavy-bottomed pot or pressure cooker with 4 cups (960 ml) of water and 1/2 teaspoon of salt. If using a regular pot, bring to a boil, then reduce heat to low, cover, and simmer for 45-60 minutes, or until the dal is very soft and easily mashed. If using a pressure cooker, cook on high pressure for 20-25 minutes, then let the pressure release naturally. The dal should be completely tender. Mash some of the dal against the side of the pot with a spoon to help thicken the base.
  2. Make the masala base: While the dal cooks, heat 2 tablespoons (28 g) of the butter and the oil in a separate large skillet or pan over medium heat. Add the chopped onion and cook, stirring often, until golden brown, about 7-8 minutes.
  3. Add the ginger-garlic paste and green chilies. Cook for 1-2 minutes until fragrant, stirring constantly to prevent burning.
  4. Add the tomato puree, remaining 1/2 teaspoon salt, Kashmiri chili powder, turmeric, and ground coriander. Cook the mixture, stirring frequently, until the tomatoes have thickened and the oil begins to separate from the masala, about 8-10 minutes.
  5. Combine and simmer: Add the cooked dal and kidney beans along with their cooking liquid to the skillet with the masala. Stir well to combine. Add additional water if the mixture looks too thick; it should be soupy at this stage.
  6. Bring the mixture to a gentle boil, then reduce the heat to low. Cover and simmer for 30 minutes, stirring occasionally to prevent sticking. The dal will thicken and the flavors will meld.
  7. Finish with cream and tempering: After 30 minutes, stir in the heavy cream and crushed fenugreek leaves. Simmer for another 5 minutes, uncovered, until the cream is fully incorporated.
  8. In a small pan, melt the remaining 1 tablespoon (14 g) of butter. Add the garam masala and let it sizzle for 10 seconds. Pour this tempered butter over the dal and stir gently.
  9. Taste and adjust seasoning with more salt or chili powder if needed. Garnish with a swirl of cream and fresh cilantro before serving.

Tips

  • Soaking is key: Do not skip soaking the urad dal and kidney beans. It significantly reduces cooking time and makes them easier to digest. If you are short on time, a quick soak in hot water for 1 hour is better than no soak at all.
  • Substitutions: If you can’t find urad dal, you can use all kidney beans or a mix of kidney beans and brown lentils (masoor). The texture will be slightly different, but still delicious. For a vegan version, substitute the butter with a high-quality vegan butter or more oil, and use full-fat coconut milk instead of heavy cream.
  • Smoky flavor: For an authentic smoky note, you can use the “dhungar” method. After the dal is finished, place a small bowl with a piece of hot charcoal in the center of the pot. Drizzle a little ghee over the charcoal, cover the pot immediately, and let it sit for 10 minutes. This is optional but adds a wonderful depth.
  • Common mistake: Avoid stirring the dal too aggressively once the cream is added, as this can cause it to curdle. Use a gentle folding motion. Also, ensure your tomatoes are fully cooked down before adding the dal; raw tomatoes will make the dish taste acidic.

Serving Suggestions

Serve the Dal Butter Masala hot, garnished with a swirl of cream and fresh cilantro. It is traditionally paired with naan bread, roti, or jeera rice (cumin rice). It also works beautifully as a side dish to grilled paneer or tandoori chicken. A side of sliced red onions and lemon wedges completes the meal.

Variations

  • Smoked Dal Makhani: Use the charcoal dhungar method described in the tips for a pronounced smoky flavor.
  • Spicier Version: Add 1/2 teaspoon of cayenne pepper or use 2-3 green chilies instead of 1-2 for extra heat.
  • Instant Pot Method: Use the sauté function to make the masala, then add the soaked dal, beans, water, and salt. Cook on high pressure for 25 minutes, then natural release. Finish with cream and tempered butter as directed.
  • No Kidney Beans: If you prefer a smoother dal, omit the kidney beans and use 1 1/4 cups (250 g) of urad dal instead.

Storage and Reheating

Store leftover Dal Butter Masala in an airtight container in the refrigerator for up to 4 days. The flavors actually improve overnight. To reheat, place it in a saucepan over low heat, adding a splash of water or milk to loosen the consistency if it has become too thick. Stir frequently until heated through. This dal also freezes exceptionally well for up to 3 months; thaw overnight in the refrigerator before reheating.

Frequently Asked Questions

Can I use split urad dal (dhuli urad) instead of whole? Yes, you can. Split urad dal cooks much faster (about 20-25 minutes) and will result in a creamier, smoother texture. However, the whole black urad dal provides a more rustic, nutty flavor that is traditional for Dal Makhani.

Why is my dal bitter? Bitterness usually comes from burning the spices or the garlic-garlic paste. Make sure to cook the masala on medium-low heat and stir frequently. Also, be careful not to burn the butter during the final tempering step.

Can I make this in a slow cooker? Absolutely. After sautéing the onions and tomatoes, add them to a slow cooker with the soaked dal, beans, water, and salt. Cook on low for 8-10 hours or on high for 5-6 hours. Finish with cream and tempered butter as directed.

How do I make it less rich? You can reduce the butter to 2 tablespoons and use half-and-half or whole milk instead of heavy cream. The dish will be lighter but still flavorful.

Is Dal Makhani gluten-free? Yes, this recipe is naturally gluten-free as it uses only lentils, beans, vegetables, and spices. Ensure your garam masala and chili powder are certified gluten-free if you have celiac disease.

Can I skip the kasuri methi (fenugreek leaves)? Kasuri methi adds a unique, slightly bitter and nutty aroma that is characteristic of this dish. If you skip it, the dal will still be good but will lack that authentic restaurant flavor. If you don’t have it, you can leave it out, or add a tiny pinch of ground fennel seeds as a substitute.

Related

More recipes to cook

Safety notes: safe minimum internal temperatures from USDA FSIS; raw and undercooked fish guidance from the U.S. FDA. Food safety notes

Spotted an error? Tell us and we will correct it (corrections policy).