How to Make Dal Makhani: A Rich and Creamy Delight

Dal Makhani is a classic Indian dish known for its rich, creamy texture and robust flavors. Originating from Punjab, this dish is made with whole black lentils (urad dal) and red kidney beans (rajma) cooked in a buttery, tomato-based sauce. Perfect for special occasions or everyday meals, Dal Makhani pairs wonderfully with naan, roti, or steamed rice. Here’s a detailed guide on how to make this delectable dish at home.


For the Dal:

  • 1 cup whole black lentils (urad dal)
  • 1/4 cup red kidney beans (rajma)
  • 4 cups water (for soaking and cooking)
  • 1 bay leaf
  • 1/2 teaspoon turmeric powder
  • Salt to taste

For the Masala:

  • 3 tablespoons butter
  • 2 tablespoons oil
  • 1 large onion, finely chopped
  • 2 tablespoons ginger-garlic paste
  • 2 large tomatoes, pureed
  • 1/4 cup tomato paste
  • 1 teaspoon cumin seeds
  • 1 teaspoon coriander powder
  • 1 teaspoon cumin powder
  • 1 teaspoon garam masala
  • 1/2 teaspoon red chili powder (adjust to taste)
  • 1/2 cup heavy cream
  • 1 cup water (adjust as needed)
  • Salt to taste
  • Fresh coriander leaves for garnish

For Garnish:

  • 1 tablespoon butter (optional)
  • 2 tablespoons fresh cream
  • Fresh coriander leaves, chopped


Step 1: Soak and Cook the Lentils and Beans

  1. Rinse the whole black lentils and red kidney beans thoroughly under running water.
  2. Soak them in 4 cups of water for at least 6-8 hours or overnight.
  3. Drain the soaked lentils and beans and transfer them to a pressure cooker. Add 4 cups of fresh water, bay leaf, turmeric powder, and salt.
  4. Pressure cook for 15-20 minutes or until the lentils and beans are soft and cooked through. Remove from heat and set aside.

Step 2: Prepare the Masala

  1. In a large pot, heat 2 tablespoons of oil over medium heat.
  2. Add the cumin seeds and let them splutter.
  3. Add the finely chopped onions and sauté until they turn golden brown.
  4. Add the ginger-garlic paste and cook for 2-3 minutes until the raw smell disappears.
  5. Add the pureed tomatoes and tomato paste. Cook for 10-15 minutes, stirring occasionally, until the tomato mixture thickens and the oil begins to separate.
  6. Add the coriander powder, cumin powder, garam masala, and red chili powder. Mix well and cook for another 2-3 minutes.

Step 3: Combine the Lentils and Masala

  1. Add the cooked lentils and beans to the pot with the masala. Mix well.
  2. Add 1 cup of water to adjust the consistency. Simmer on low heat for 30-40 minutes, stirring occasionally to prevent sticking.
  3. Add the heavy cream and 3 tablespoons of butter. Mix well and let it simmer for another 10-15 minutes until the dal reaches a creamy consistency.
  4. Adjust salt to taste.

Step 4: Garnish and Serve

  1. Transfer the Dal Makhani to a serving bowl.
  2. Garnish with a tablespoon of butter (optional), fresh cream, and chopped coriander leaves.
  3. Serve hot with naan, roti, or steamed rice.

Tips for Perfect Dal Makhani

  1. Soaking Time: Ensure you soak the lentils and beans for at least 6-8 hours to achieve a soft and creamy texture.
  2. Cooking Time: Slow-cook the dal on low heat to enhance the flavors and achieve the perfect consistency.
  3. Butter and Cream: For an authentic and rich taste, don’t skimp on the butter and cream.
  4. Tomatoes: Use fresh tomatoes for a vibrant flavor, but you can also use canned tomatoes if fresh ones are not available.
  5. Spice Levels: Adjust the red chili powder according to your heat preference.


Dal Makhani is a beloved dish that embodies the richness and diversity of Indian cuisine. Its creamy texture and robust flavors make it a perfect dish for both special occasions and everyday meals. By following this detailed recipe, you can recreate the magic of restaurant-style Dal Makhani in your own kitchen. Enjoy this delightful dish with your family and friends!

Similar Posts

Leave a Reply

Your email address will not be published. Required fields are marked *