A hearty Pakistani take on the classic creamy lentil curry, this slow-simmered dish features whole black gram and kidney beans cooked until velvety, then enriched with generous amounts of butter and cream. The masala is built on caramelized onions, ripe tomatoes, and warm Pakistani spices for a deeply satisfying, restaurant-style accompaniment to naan or steamed basmati rice.
Prep Time20 mins
Cook Time120 mins
Total Time140 mins
Servings5
Yield5 servings
Nutrition Facts
Per serving (estimated)
- 425 kcalCalories
- 22 gFat
- 11 gSaturated Fat
- 42 gCarbs
- 13 gFiber
- 5 gSugar
- 18 gProtein
- 610 mgSodium
- 780 mgPotassium
- 110 mgCalcium
- 6 mgIron
- 9 mgVitamin C
- 210 mcgVitamin A
Ingredients
For the lentils and beans
- 1 cup whole black gram (sabut urad dal), sorted and rinsed
- 1/3 cup dried red kidney beans (rajma), sorted and rinsed
- 4 cups water for pressure cooking
- 1 teaspoon salt
- 1/2 teaspoon baking soda
For the masala base
- 3 tablespoons ghee or neutral oil
- 1 large yellow onion, finely chopped
- 1 tablespoon ginger paste
- 1 tablespoon garlic paste
- 2 medium ripe tomatoes, finely pureed
- 2 green chilies, slit lengthwise
- 1 teaspoon ground cumin
- 1 teaspoon ground coriander
- 1/2 teaspoon red chili powder (Kashmiri preferred)
- 1/4 teaspoon ground turmeric
For finishing
- 4 tablespoons unsalted butter, divided
- 1/2 teaspoon garam masala
- 1/4 cup heavy cream
- 2 tablespoons chopped fresh cilantro
- 1 teaspoon dried fenugreek leaves (kasuri methi), crushed
- Salt to taste
Directions
- Place the black gram and kidney beans in a large bowl, cover with 4 cups of water, and soak overnight for 10-12 hours; drain and rinse well.
- Transfer the soaked lentils and beans to a pressure cooker, add 4 cups fresh water, 1 teaspoon salt, and the baking soda. Pressure cook on medium heat for 25-30 minutes (about 8-9 whistles), or until the dal is completely soft and the beans mash easily.
- Heat the ghee in a heavy-bottomed pot over medium heat. Add the chopped onion and cook for 8-10 minutes, stirring often, until deeply golden brown. Add the ginger and garlic pastes and cook for 2 minutes until fragrant and the raw smell disappears.
- Stir in the tomato puree, green chilies, cumin, coriander, red chili powder, and turmeric. Cook for 6-8 minutes, mashing the masala against the sides of the pot, until the oil begins to separate from the mixture and the sauce turns a deep brick-red color.
- Pour the cooked lentils and beans (with their cooking liquid) into the masala. Using a wooden spoon, stir and lightly mash about one-third of the lentils against the side of the pot to thicken the gravy naturally. Simmer uncovered on low heat for 45-60 minutes, stirring every 10 minutes to prevent sticking.
- Stir in 3 tablespoons of the butter, the garam masala, and the crushed kasuri methi. Continue to simmer for another 10 minutes until the curry is creamy and coats the back of a spoon; add hot water in small splashes if it thickens too much.
- Remove from heat and swirl in the heavy cream plus the remaining 1 tablespoon of butter. Taste and adjust salt. Cover and let rest for 5 minutes so the flavors meld.
- Garnish with chopped cilantro and serve hot with fresh naan, tandoori roti, or steamed basmati rice, accompanied by a wedge of lemon and sliced raw onions.
Cook’s Notes
- For the silkiest texture, take time to fully caramelize the onions until they turn a rich mahogany color before adding the ginger-garlic paste.
- An overnight soak is essential for even cooking; if short on time, soak in hot water for at least 3 hours and extend pressure-cooking time by 10 minutes.
- The traditional Pakistani touch comes from finishing with both butter and cream plus a pinch of kasuri methi, which adds a subtle smoky bitterness that balances the richness.
- Leftovers keep refrigerated for up to 4 days and actually taste better the next day as the spices deepen; reheat gently with a splash of water and an extra knob of butter.
- For a smokier flavor reminiscent of dhaba cooking, briefly place a live charcoal briquette in a small steel bowl set inside the pot, drizzle with 1 teaspoon of ghee, cover, and smoke for 3 minutes before stirring.










