Dal Makhani Recipe (Creamy Restaurant-Style Black Lentils)

Written by SK Team

Published on:

Dal makhani is a rich, comforting North Indian dish made with whole black urad dal and kidney beans simmered in a buttery, gently spiced tomato gravy. This home-style version gives you a creamy texture and deep flavour without requiring restaurant equipment. Serve it with basmati rice, naan, or roti.

A bowl of creamy Indian dal makhani
Food photograph via Rashpal Singh on Unsplash. Illustrative image.

Recipe at a glance

  • Prep time: 15 minutes, plus soaking
  • Cook time: about 1 hour 30 minutes (less with a pressure cooker)
  • Serves: 4
  • Cuisine: North Indian

Ingredients

  • 1 cup whole black urad dal (whole black gram), rinsed and soaked overnight
  • 2 tablespoons rajma (kidney beans), rinsed and soaked overnight
  • 4 cups water for cooking, plus extra as needed
  • 2 tablespoons butter or ghee
  • 1 tablespoon neutral oil
  • 1 small onion, finely chopped
  • 2 medium tomatoes, finely grated or puréed
  • 1 tablespoon ginger-garlic paste
  • 1 teaspoon Kashmiri chilli powder or mild paprika
  • ½ teaspoon ground cumin
  • ½ teaspoon garam masala
  • ¼ cup cream, plus a little to finish (optional)
  • Salt, to taste
  • 1 teaspoon dried kasuri methi, crushed (optional)

How to make dal makhani

1. Soak and cook the lentils

Soak the urad dal and kidney beans in plenty of water overnight. Drain and rinse. Add them to a pressure cooker with 4 cups of fresh water. Cook until completely tender, following your cooker’s instructions. If cooking in a covered pot, simmer gently until soft, adding hot water as needed; this can take 1½–2 hours. The beans should mash easily between your fingers.

2. Make the masala

Heat the oil and 1 tablespoon of butter in a heavy saucepan. Add the onion and cook until soft and lightly golden. Stir in the ginger-garlic paste and cook for 30–60 seconds. Add the tomato purée, chilli powder and cumin. Cook, stirring, until the mixture thickens and the raw tomato smell fades.

3. Simmer until creamy

Add the cooked lentils and their cooking liquid to the masala. Stir well, lightly mash some of the lentils against the side of the pan, and simmer on low heat for 25–35 minutes. Stir frequently and add a splash of hot water if it becomes too thick.

4. Finish and serve

Stir in the remaining butter, garam masala, crushed kasuri methi and cream, if using. Simmer for another 2–3 minutes. Taste and adjust the salt. Serve hot with basmati rice, naan or roti.

Tips for flavourful dal makhani

  • Soak thoroughly: overnight soaking helps the beans cook evenly.
  • Cook until very soft: the signature texture comes from tender lentils and a slow simmer.
  • Keep the heat low: stir regularly so the thick dal does not catch on the bottom.
  • Make it your own: use less butter or omit cream for a lighter version; the result will be less rich but still tasty.
  • Plan ahead: the flavour often deepens after resting overnight. Refrigerate promptly and reheat thoroughly with a splash of water.

What to serve with dal makhani

Pair it with steamed basmati rice, jeera rice, naan, chapati or tandoori roti. Add a simple cucumber salad or sliced onion for freshness.

Frequently asked questions

Can I make dal makhani without kidney beans?

Yes. Use only whole black urad dal. The texture and flavour will be slightly different, but it will still make a satisfying lentil curry.

Can I make it without cream?

Yes. Skip the cream and finish with a little butter or ghee, or leave both out for a less rich version.

How do I store leftovers?

Cool promptly, refrigerate in a covered container and use within 3 days. Reheat until steaming hot, adding water to loosen the dal. Freeze in portions for longer storage.

More recipes to try

Enjoy this with our homemade tandoori roti or explore more vegetarian recipes from Sravani’s Kitchen.