Dal Makhani Recipe with step-by-step photos and instructions. Warm, creamy, and full of robust flavors, Dal Makhani is a beloved North Indian dish that has found its way into the hearts of food lovers worldwide. Whether you’re hosting a gathering, preparing a family meal, or just looking to experiment with Indian cuisine, this recipe will help you create that iconic restaurant-style dal right in your home. Follow this easy, foolproof guide to make delicious, authentic Dal Makhani.

What Is Dal Makhani?
Dal Makhani translates to “buttery lentils” in Hindi. Made with whole black gram (urad dal) and red kidney beans (rajma), this dish is slow-cooked in a rich, spiced gravy of tomatoes, cream, and ghee. Its smooth, velvety texture and layers of flavor make it a staple in Indian households and one of the best-loved dishes on any Indian restaurant menu.
Now, let’s get cooking!
Cooking Tips for Dal Makhani
A few key things to keep in mind—make sure to rinse the whole urad dal at least 3-4 times. You’ll notice it changes to a slightly brownish-green color. This step is super important because it removes the bitterness and really enhances the flavor of the dal makhani. Trust me, don’t skip this part!
For a slightly spicier dish, consider using deggi mirch powder instead of Kashmiri chili powder. It adds more heat while preserving the rich, vibrant red color.
Let the dal simmer nice and slow. The longer it cooks on low heat, the richer and creamier it gets—so don’t rush it!
Don’t skip the butter and cream either. They’re the secret to that smooth, luxurious texture that makes Dal Makhani so amazing.
Add more hot water as needed while the dal settles, as it will continue to thicken over time.
Whenever possible, let the dal makhani rest for 2-3 hours before serving. This resting time enhances the flavors and elevates the overall taste.
If you’re missing that smoky flavor in your dal, here’s a simple trick! Try the Dhungar method to give your dal makhani that delicious, smoky touch. Heat a piece of charcoal until it’s red hot, then place it in a small bowl. Pop the bowl in the middle of your cooked dish, add a teaspoon of ghee over the charcoal, and cover the pot. Let it sit for 2-3 minutes to soak in the smoky goodness. Once that’s done, just remove the bowl with the charcoal, and your dish is ready to serve!
Why You’ll Love This Recipe
- It’s wholesome and hearty—comfort food at its finest.
- The rich, buttery flavors feel indulgent but are easy to achieve at home.
- Perfect for any occasion—whether it’s a cozy dinner or a festive celebration!
Serving Suggestions
Dal Makhani is a delicious dish that works well with many sides. For a classic meal, pair it with buttery naan or soft roti for the perfect match to its creamy texture. Steamed basmati rice, jeera rice, or peas pulao also go great, soaking up all the rich flavors. To make the meal extra special, add a simple cucumber salad, onion slices with lemon, and some tangy mango pickle on the side. Finish it off with a glass of lassi or chilled buttermilk to balance the spice and enjoy a complete, authentic meal!
Explore more delicious dal recipes from the options below.
Dal Makhani Recipe
Description
Dal Makhani is a delicious and hearty dish from Punjabi cuisine, loved for its creamy texture and smoky flavor. Made with whole black lentils (urad dal) and kidney beans, it’s slow-cooked to bring out the rich spices and buttery goodness in every bite. Whether it’s a special occasion or just a cozy dinner at home, this dish is the perfect way to enjoy the comforting flavors of Indian cooking.
Ingredients for Dal Makhani
Chilli, Ginger Garlic Paste:
Tomato Puree
Other Ingredients:
How to Make Dal Makhani
Instructions on how to make the Dal Makhani
Instructions on how to make the Dal Makhani with step-by-step photos
-
Prep the Lentils
Rinse 1 cup of urad dal (whole black gram) and 1/4 cup of rajma (red kidney beans) in a bowl thoroughly 3–4 times.
After rinsing, soak them overnight in clean water.
-
Cook the Lentils
Transfer the soaked dal and rajma to a pressure cooker.
Add water to fully submerge the lentils. Toss in 3 garlic cloves, 1 tsp Kashmiri chili powder, and 1 tbsp ghee.
Pressure cook on medium flame for 5 whistles.
Turn off the flame and allow the pressure to naturally release.
-
Open the lid and check if the lentils are soft by pressing them gently between your fingers. If they’re tender, they’re ready!
Mash the lentils slightly using a ladle or hand masher and set aside.
-
Prepare the Masala Base
In a blender or mixer, combine the chopped ginger, garlic, and green chili. Blend until coarsely ground, then add a little water and continue blending to achieve a smooth, fine paste. Reserve.
Add 300g of chopped tomatoes to a blender or mixer and blend into a smooth puree. Set it aside for later use.
-
Prepare the Masala Base
Heat 2 tbsp ghee in a pan. Add the chilli, ginger, garlic paste and sauté on low flame for 1 minute. Pour in the tomato puree and sauté for 2 minutes on low flame. -
Stir in 1 tsp Kashmiri chili powder, 1/2 tsp coriander powder, and 1/4 tsp garam masala powder. Cook until the ghee separates from the masala.
-
Add the cooked lentils to the pan and mix well. Mash slightly for a creamier texture. Simmer on low flame for 10 minutes, stirring occasionally.
-
Add 3/4 cup of hot water and simmer for another 5 minutes, allowing the flavors to meld.
-
Stir in 2 tbsp unsalted butter and melt it on low flame.
Add 1/2 tsp salt and 1 tsp crushed kasuri methi. Mix well.
-
Finish with 4 tbsp fresh cream. Turn off the flame and stir gently until combined. Serve hot.
