Dal Makhani (Restaurant Style)
This Dal Makhani recipe includes both stovetop and Instant Pot methods. Dal Makhani is a traditional North Indian dish prepared with whole urad dal, rajma, butter, and spices. It is one of the most loved lentil dishes that comes from the Punjab region of India.
Nutrition per serving
Ingredients
4 servings
- 1 cup urad dal (Indian black lentils/ whole black gram)
- ¼ cup rajma (red kidney beans)
- 4 cups water
- 2 tablespoons ghee
- 3 tablespoons unsalted butter
- ½ cup onions
- 1 tablespoon ginger garlic paste
- 1 cup tomato puree
- 1½ tablespoon Kashmiri red chili powder
- 1 tablespoon garam masala
- 1 tablespoon sea salt
- 2 cup hot water
- 1 tablespoon kasuri methi (dried fenugreek leaves)
- ¼ cup heavy cream (cooking cream or whipping cream)
Instructions
- 1
Put urad dal and rajma in a large bowl. Wash them well by rubbing with your hands. Drain the water and rinse about three times. Soak them in 4 cups of water overnight. The next day, drain, rinse again, and keep aside.
- 2
Add the soaked dal and beans to fresh 4 cups of water. Cook in a pressure cooker for about 10 whistles on medium heat, or in an Instant Pot on high pressure for 20 minutes. If you don’t have these, cook in a heavy pot until they are soft, adding hot water if needed.
- 3
The dal and rajma should become very soft. When pressed with a spoon, they should mash easily. If they are still hard, add about ½ cup hot water and cook again for 3 to 4 more whistles.
- 4
Heat ghee in a heavy pot. Add whole spices (if using) and let them fry for a minute.
- 5
Add chopped onions and cook until they turn golden, about 7 minutes. Then add ginger-garlic paste and cook for another minute until it smells nice.
- 6
Add tomato puree and cook for 3 to 4 minutes. Then mix in salt, chili powder, and garam masala. Cook until the mixture thickens and gives a good aroma, about 4 to 5 minutes.

- 7
Lightly mash the cooked dal and add it to the pot along with its cooking water. Pour in 1 cup of hot water and mix well.
- 8
Cook on low heat, stirring often so it doesn’t stick to the bottom. After about 60 minutes, the dal will start to thicken.
- 9
Add another ½ to 1 cup of hot water and continue cooking until very thick. This may take about 30 more minutes. In total, cook for around 90 minutes after adding the dal. Time may vary depending on your pot and stove.

- 10
Crush kasuri methi between your palms and add it in. Pour in the cream and mix. Cook for another 6 to 8 minutes until rich and creamy. Taste and adjust salt or garam masala if needed. Finally, add butter and stir well.