A hearty North Indian weeknight classic from Punjab, this slow-simmered kidney bean curry in a glossy tomato-onion masala is ladled over fluffy steamed basmati rice. Warmly spiced rather than fiery, it is deeply comforting and naturally vegan when made with oil.
Nutrition Facts
Per serving (estimated)
- 485 kcalCalories
- 12 gFat
- 3.5 gSaturated Fat
- 78 gCarbs
- 11 gFiber
- 6 gSugar
- 18 gProtein
- 580 mgSodium
- 720 mgPotassium
- 95 mgCalcium
- 5.2 mgIron
- 15 mgVitamin C
- 85 mcgVitamin A
Ingredients
For the kidney beans
- 1 cup (200 g) dried red kidney beans, soaked 8 hours and drained
- 3 cups water, for pressure cooking
- 1 tsp salt
For the masala base
- 2 tbsp ghee or vegetable oil
- 1 tsp cumin seeds
- 1 bay leaf
- 2 cloves
- 1-inch cinnamon stick
- 1 large onion (about 200 g), finely chopped
- 1.5 tbsp ginger-garlic paste
- 2 green chilies, slit lengthwise
- 3 medium tomatoes, blended to a smooth puree
For the spice mix
- 1 tsp ground turmeric
- 1.5 tsp Kashmiri red chili powder
- 2 tsp ground coriander
- 1 tsp ground cumin
- 1.5 tsp garam masala
- 1 tbsp kasuri methi (dried fenugreek leaves), crushed between palms
- Salt to taste
For the basmati rice
- 1.5 cups aged basmati rice, rinsed until water runs clear
- 3 cups water
- 1 tsp salt
- 1 bay leaf
- 1 tsp ghee
For garnish
- 3 tbsp chopped cilantro leaves
- 1 tsp ghee
- 4 lemon wedges
Directions
- Pressure cook the soaked kidney beans with 3 cups water and 1 tsp salt for 15 to 20 minutes (5 to 6 whistles on a standard cooker) until tender but still holding shape; drain and reserve the cooking liquid.
- While the beans cook, rinse the basmati rice and soak for 20 minutes. Bring 3 cups water to a boil with the bay leaf, salt, and ghee; add the drained rice, cover, and simmer on low for 12 to 15 minutes. Remove from heat and rest, covered, for 5 minutes, then fluff with a fork.
- Heat ghee in a heavy pan over medium heat. Add cumin seeds, bay leaf, cloves, and cinnamon and let them sizzle for 30 seconds until fragrant.
- Add the chopped onion and saute for 8 to 10 minutes until deep golden brown. Stir in the ginger-garlic paste and green chilies and cook 2 minutes until the raw aroma disappears.
- Pour in the tomato puree and cook for 8 to 10 minutes, stirring often, until the masala thickens and you see a thin layer of oil separating at the edges.
- Add the turmeric, Kashmiri chili, coriander, and ground cumin; stir for 1 minute to bloom the spices.
- Add the cooked kidney beans plus 1.5 cups of the reserved cooking liquid. Mash about a quarter of the beans against the side of the pan to thicken the gravy naturally. Simmer uncovered for 15 to 20 minutes, adding more liquid if the gravy looks dry.
- Stir in the garam masala and crushed kasuri methi, simmer 3 more minutes, and adjust salt. The gravy should be thick and lightly soupy, clinging to the beans.
- Pile the steamed rice on warm plates, ladle the rajma generously alongside, drizzle with a teaspoon of ghee, scatter cilantro, and serve with a lemon wedge.
Cook’s Notes
- Crush the kasuri methi between your palms just before adding; this releases the essential oils that give rajma its signature aroma.
- For a richer, restaurant-style finish, swap half the ghee for butter and finish the curry with 2 tablespoons of light cream.
- Mashing roughly one-quarter of the beans in the gravy is the traditional way to thicken rajma without cornstarch or cream.
- If using two 15-oz cans of kidney beans, skip the soaking and pressure-cooking step and simmer the drained beans in the masala for 20 minutes instead.
- Serve with classic accompaniments: sliced raw onion tossed with lemon and salt, green coriander chutney, and a bowl of plain yogurt.
More India Recipes You’ll Love
Craving more flavors from India? Try these traditional recipes:










