This Dal Makhani is rich, creamy and incredibly comforting. It's the kind of dal I crave for, along with hot garlic coriander naan and a full restaurant-style Indian meal. I cook the whole urad and rajma in the Instant Pot until completely soft, then simmer the dal on the stove with a buttery onion tomato masala until everything becomes thick, creamy and full of flavour.

Recipe Summary: Dal Makhani
- ✅ Recipe Name: Dal Makhani
- 🕒 Ready In: 45 minutes plus overnight soaking time
- 👪 Serves: 6
- 🍽 Calories: 283 per serving
- 🥣 Main Ingredients: Urad dal, onion, garlic, tomato, cream and butter
- 📖 Dietary Info: vegetarian
- ⭐ Why You'll Love It: This restaurant-style dal makhani is rich, creamy and full of flavour. Whole urad and rajma are pressure-cooked until completely soft, then simmered on the stove with butter, cream, tomato masala and kasuri methi.
SUMMARIZE & SAVE THIS CONTENT ON
Jump to:
I prefer using the Instant Pot to cook the lentils and beans quickly, then finish the dal properly on the stove. I find this gives the best balance of speed, control and flavour.
The most important thing to understand is this:
Creaminess starts with properly cooked urad. Butter and cream only take it further. If the urad is not soft enough before it goes into the masala, the dal will never become truly creamy.
What Makes This Dal Makhani Work?
Dal makhani is all about texture.
The whole urad needs to be cooked until it completely softens and breaks down. That is what gives dal makhani its natural creaminess.
Butter and cream make it richer, but they are not the main reason the dal becomes creamy.
If the cooked urad still feels firm or grainy, the finished dal will taste separate no matter how much cream you add.
That is why I pressure cook the soaked urad and rajma first until almost mushy, then simmer everything with the masala on the stove until the dal thickens and becomes one rich, creamy mixture.
Important Ingredient Notes
Full recipe ingredients and measurements can be found in the recipe card below.

Whole urad and rajma
Whole urad, also called black gram or sabut urad, is the main ingredient in dal makhani.
It must be soaked and cooked until very soft. The creamier the urad becomes, the better the dal makhani will be.
I use mostly whole urad with a small amount of rajma. The rajma adds body and a little extra texture, but it should not dominate the dal.
I prefer soaking them overnight in boiling water. This gives them the best chance of cooking down properly in the Instant Pot.
A smooth onion, garlic, green chilli and ginger base gives the creamiest finish.
Very finely chopped onions can work, but large pieces will not melt into the dal properly.
Passata works really well here because it is smooth and gives a consistent sauce. I find crushed tinned tomatoes also work beautifully.
Butter and cream
This is my restaurant-style version, so I use a mix of butter and cream.
They make the dal richer and more luxurious, but remember: the real creaminess starts with the soft urad.
Kasuri methi
Kasuri methi gives dal makhani that North Indian restaurant flavour. Crush it between your fingers before adding it at the end.
My Creaminess Trick
If the urad is not quite as soft as I want, or if I want extra creaminess without relying only on cream, I mash or blend a small portion of the cooked dal and stir it back in.
This helps thicken the dal naturally. It is especially useful if your urad is older and has taken longer to soften.
You still need to simmer the dal on the stove afterwards so everything comes together properly.
How To Make Dal Makhani

- Step 1: Rinse the whole urad and rajma well. Soak them overnight in plenty of boiling water.

- Step 2: Pressure cook for 30 minutes in the Instant Pot until very soft.
Add the soaked urad and rajma to the Instant Pot with fresh water.
Pressure cook for 30 minutes, then allow the pressure to release naturally.
The urad should be extremely soft.
Check by pressing a grain between your fingers or against the side of the pot with a spoon. It should mash completely.
If it still feels firm, pressure cook for a little longer.

- Step 3: Cook the onion tomato masala until it releases oil.

- Step 4: Add the cooked dal.
Cook the tomato masala until it thickens and the oil/butter begins to separate at the edges. This step builds the flavour of the dal.
Add the pressure-cooked urad and rajma to the masala, along with the cooking liquid. At first, the dal may look like lentils and water sitting separately in the pan.

- Step 5: Simmer on low heat for at least 30 minutes.

- Step 6: Finish with butter, cream and kasoori methi.
Simmer on low heat for at least 30 minutes, stirring regularly. As it cooks, the urad will break down further and the dal will become thicker, creamier and more unified.
You are looking for the dal to become one creamy mixture, not water and lentils floating separately. After simmering, the dal should look thick, creamy and fully combined.
Once the dal is thick and creamy, add butter, cream, garam masala and crushed kasuri methi.
How I Like to Serve It
I love serving dal makhani with hot naan, especially garlic and coriander naan.
It also works beautifully with jeera (cumin) rice or tandoori-style breads.
When I want a restaurant-style meal at home, I serve it with matar paneer or palak paneer, bombay potatoes, Indian kachumber salad or laccha pyaaz and cucumber raita.
For more rich dal recipes, try my shahi dal maharani or Dishoom black dal.
For a simpler everyday dal, my tarka dal is always a good one to have in your rotation.
Make Ahead
Dal makhani is excellent for making ahead. The flavour improves as it sits, and the dal often tastes even better the next day.
Reheat gently on the stove, adding a splash of water if it has thickened too much in the fridge.
Add a little fresh cream or butter at the end if you want to revive the restaurant-style finish.
Storage
Store leftover dal makhani in an airtight container in the fridge for up to 3 days.
Reheat until piping hot before serving.
You can also freeze dal makhani for 1 month.

Hayley's Tips
- I always soak the whole urad and rajma before cooking.
- Overnight soaking gives the best result.
- I now prefer soaking in boiling water because older lentils and beans can take longer to soften.
- The cooked urad should mash completely between your fingers before it is added to the masala.
- I cook the masala separately on the stove, then add the pressure-cooked dal.
- A smooth onion, garlic and ginger base gives a creamier finish than large chopped pieces.
- The dal needs at least 30 minutes of simmer time however the longer the better.
- Creaminess comes mainly from the soft urad, not just from butter and cream.
- Butter, cream and kasuri methi give the final restaurant-style flavour.
- I skip charcoal smoking because it is less practical at home.
Dal Makhani FAQs
The urad should mash completely when pressed between your fingers. This is the most important step for creamy dal makhani.
You can, but this version is my restaurant-style dal makhani, so I finish it with cream and butter. The dal should still become naturally creamy from the cooked urad before the cream is added.
Yes. You can cook the soaked urad and rajma in a pressure cooker or on the stove until completely soft. The key is that they must mash easily before being added to the masala.

As always if you make this recipe, be sure to leave me a comment, rate this recipe and tag me on Instagram @jcookingodyssey or #jcookingodyssey. I love seeing all your photos of my recipe recreations!
Don’t forget to follow me on social media using the buttons below – I can't wait to see you all there!
📖 Recipe

Dal Makhani
Equipment
- Instant pot
Ingredients
- 1 cup whole urad
- 2 tablespoon red kidney beans
- 3 tablespoon oil
- 2 tablespoon ghee optional
- 1 cinnamon bark small piece
- 2 bay leaf
- 3 cloves
- 1 teaspoon cumin seeds
- 1 onion large
- 6 cloves garlic
- 3 green chillies
- 1 inch ginger
- ½ cup passata
- 1 teaspoon red chilli powder
- ½ teaspoon turmeric powder
- 2 teaspoon ground cumin and coriander
- ½ teaspoon garam masala
- 1 teaspoon kasoori methi
- 2 tablespoon butter
- ¼ cup cream
- salt to taste
Instructions
- Clean, wash and soak 1 cup whole urad and 2 tablespoon red kidney beans together in plenty of boiling water overnight.
- Once soaked discard the water.
- Add to the inner pot of Instant Pot and pressure cook on HIGH for 30 minutes then allow natural pressure release. Meanwhile, prepare the masala.
- Finely chop or crush 1 onion, 6 cloves garlic, 3 green chillies, 1 inch ginger separately in a food processor.
- Heat 3 tablespoon oil (and 2 tablespoon ghee if using) and add 1 cinnamon bark, 2 bay leaf, 3 cloves and 1 teaspoon cumin seeds.
- Once they splutter, add the crushed onion and sauté until translucent.
- Then add the crushed garlic, green chilli and ginger and sauté until oil releases.
- Add ½ cup passata and cook until the mixture thickens and again oil releases on the sides.
- Add the spice powders - 1 teaspoon red chilli powder, 2 teaspoon ground cumin and coriander and ½ teaspoon turmeric powder.
- Add in the cooked urad, season with salt to taste and pour in fresh water.
- Allow the dal makhani to simmer on low heat for at least 30 minutes or until the dal becomes creamy and thick and the water is not separate from the dal.
- Sprinkle over ½ teaspoon garam masala and mix well.
- Finish the dal with 1 teaspoon kasoori methi, 2 tablespoon butter and ¼ cup cream.
- Mix well and serve hot.
Video
Notes
- The cooked urad should mash completely between your fingers before it is added to the masala.
- A smooth onion, garlic and ginger base gives a creamier finish than large chopped pieces.
- Instead of passata, use crushed tinned tomatoes. Fresh tomatoes will not create a thick masala.
- The dal needs to simmer at least 30 minutes on low heat however, the longer the better.
Nutrition
PLEASE NOTE: Nutritional values are estimated by a computer and may vary based on ingredients and portion sizes. For personalised dietary advice, please consult a qualified healthcare professional.
Share on Facebook Pin This Recipe




Gita Jaishankar says
Thatz so sweet....love your low-fat version of dhal mahkani...it does look rich and creamy too...I am definitely going to try this one..Happy Valentines Day dear 🙂
Red Chillies says
Good one for the heart and looks good too.
Love2cook Malaysia says
Wow, this is looking awesome! I'm sure it tastes good too...can I have a plate??? 😀
Happy Valentines my friend!
Cham says
The heart made with yogurt - heart healthy! Delicious dhal!
Priya Suresh says
Protein packed daal makhani...looks fantastic..Happy V day dear, love the heart over the dal...beautiful..thanks for sending to my event..
Swathi says
Jagruti,
Dal Makhani looks perfect, love the heart too.
Nina says
Very nice! xo
Nithu Bala says
Wow! looks yummy..healthy too..Happy V day dear:-)
kitchen queen says
lovely and healthy dal makhni makes me drool.
Ushnish Ghosh says
Dear Jagruti
I feel good that you visited my blog and thank you so much for your appreciation.
You have so many nice dishes and very innovative too. It will be some time before I try any of your dishes, I dont have proper arrangement to cook here in Milano and surviving on bread 🙁
Let me cook your dishes and eat virtually for the time being :-).
Let me see what all you have been cooking, that will be a good time pass
Have a nice sunday
Preeti Kashyap says
Nice...healthy and yummm! Cute lil heart too... 🙂
Rachel says
Another great recipe from Jagruti for My Legume Love Affair #20. Your Black Eyed Pea Soup is already of my list of dishes to make soon.
il sapore del verde says
Color and profume... It's very good and i'm happy for visit you!
Ciao Ciao. Deborah
Angie's Recipes says
A healthier way to enjoy the creamy bean soup!
Pari Vasisht says
Hi! The yogurt heart looks so cute, I love this daal too, liked ur low fat version. have a hearty valentine's..