Rajma is a warm, kidney bean dish from the state of Punjab in North India. It's comforting, heavily spiced (without being spicy), and absolutely delicious over rice. If you've never had it, think of it as a vegetarian chili-- it's as rich as chili, but much more interesting and crave-worthy! The leftovers keep for several days, and reheat nicely.

I owe a great debt of gratitude to my childhood friends that immigrated from India. I always loved eating at their houses for dinner when I was growing up, and I believe my love of beans was initially sparked at their house. It was either over a bowl of comforting dal, made from orange lentils that magically melt and turn into a creamy, yellow soup as they cook, or it was a bowl of rajma that initially caused me to swoon.
The one thing both of those dishes have in common is spices. Lots and lots of warm, cozy, interesting spices that were a far cry from the food I grew up on. No disrespect to my Mom at all, but the dishes of my childhood definitely did not contain turmeric, ginger, garam masala, or whole cumin seeds. It was a whole new world to me, to quote Princess Jasmine.
It would be years before I learned about fresh curry leaves, fenugreek, and anise. My love and discovery of South Asian food is a constant life-pursuit, and if it's new to you, I invite you to start here with this rajma recipe!
As I got older, in graduate school, I started treating myself to Indian food at my favorite restaurant nearly every Friday night. The dishes rotated weekly, but if rajma was on the menu, it was always on my plate. I devoured rajma over rice and with naan.
In my opinion, one of the most beautiful things about Indian cuisines is the way so many dishes are creamy without cream. Just like a bowl of red lentils melts into creamy yellow moong dal, a bag of kidney beans can melt into this curry. By the way, when we say 'curry,' we mean 'a mix of things,' not exactly the curry spice. Most curry dishes have a 'masala,' or a spice mix that gives them their signature flavor.
If this is your first time making any cuisine from India, welcome! I'm so glad to have you here. I suggest you also check out other Indian blogs, like Archana's Kitchen, or one of my personal favorites because it's all vegetarian: Dassana's Veg Recipes of India. As if those blogs won't make you want to hop in the kitchen, check out Indian Healthy Recipes by Swasthi.
How to Make Rajma
- You're going to need 1 cup of dried kidney beans, and a quick scan of your spice cabinet before making this recipe. Check your pantry for onions, garlic, canned tomatoes and fresh ginger, first. Then, go over your spices needed: cayenne pepper, cumin seeds, ground coriander, turmeric, and garam masala (a spice blend). As for garnishing, you'll need some fresh cilantro and optional heavy cream.
- Side note: did you know coriander is dried cilantro seeds? We're using both in this dish, because cilantro is the world's greatest plant, in my not-so-humble opinion. If you're one of those people that doesn't like cilantro, I think you should leave it out, but still use the coriander (the dried and ground version!).
The Ingredients
- Kidney Beans. This recipe cooks dried kidney beans from scratch, using an instant pot or pressure cooker. You may sub 2 15-ounce cans of already cooked kidney beans, if your prefer. Just rinse and drain before using.
- Butter. Unsalted butter or ghee are both welcome here.
- Oil. Choose a neutral oil that doesn't impart any flavor to the dish. We're adding plenty of spices and flavoring this rajma recipe on our own.
- Onion.
- Garlic. Four medium cloves, minced, or about 2 heaping teaspoons.
- Fresh Ginger. I buy fresh ginger, peel it with the back of a spoon, and then toss it in my freezer in an airtight bag or container. Then, I use a microplane grater for grating it into a dish, right from the freezer.
- Cayenne Pepper. Start with ¼ teaspoon, and add more, if you like things spicy.
- Cumin Seeds. Traditionally, cumin seeds are used for rajma, and I love the way they release their flavors into the oil as they simmer. However, you can use ½ teaspoon of ground cumin, if that's what you have.
- Ground Coriander. Do not omit this--it's insanely delicious. This recipe needs 1 teaspoon ground coriander.
- Turmeric. This brings a lovely color, and incredible health benefits to this dish.
- Garam Masala. This is a spice blend, and contents can vary, but mine has: coriander, black pepper, cumin, cardamom and cinnamon. It's divine!
- Canned Tomatoes. I prefer crushed tomatoes for this rajma, because I want the beans to be the only chunks or texture to the dish.
- Fresh Cilantro.
- Heavy Cream. Entirely optional, but incredibly lovely and very welcome in my bowl.
The Directions
- Gather the ingredients: raw kidney beans (or canned, but follow directions in card), butter, onions, garlic, ginger, spices, and canned tomatoes. Reserve the cilantro and heavy cream for serving.
- First, rinse and soak the kidney beans for at least 8 hours. Rinse and drain before proceeding with recipe. **Alternatively, you may use two 15-ounce cans of dark red kidney beans for this recipe. If doing this, skip this step and the next 2 steps.
- After the beans have soaked for 8 hours, drain and rinse them one more time. Place them in an instant pot or pressure cooker, and cover with water until there is 2-inches of water over the top of the beans.
- Cook the kidney beans in the pressure cooker on HIGH pressure, for 15 minutes. After 15 minutes, release the pressure safely, and check on the beans. Taste at least 5 beans to ensure they are cooked all the way through. If they're not, return to pressure and cook another 5 minutes. Beans can vary in age and storage time, and sometimes can take longer to cook. If you lack a pressure cooker, cook the beans on the stove top for 60-90 minutes, testing the same way before turning off the heat. Do not ever cook kidney beans in a slow cooker--it can be toxic.
- Drain the beans, and set aside. Add the butter and oil to a deep pot over medium heat. Once the butter and oil are sizzling, add the chopped onions to the pan. Stir frequently until the onions start to caramelize and turn golden brown, but do not let the edges burn.
- Next, add the garlic, ginger, cayenne, cumin seeds, coriander, turmeric, and garam masala to the pot. Stir and toast the spices with the onions for at least 1 minute. Doesn't it smell amazing?
- Next, add the crushed tomatoes, and salt, and cook for 5 minutes. Now, add the cooked kidney beans, 2 cups of water, and bring everything to a gentle simmer.
- Before serving, add fresh chopped cilantro and the heavy cream (if using).

Can you make this rajma without soaking the kidney beans?
Kidney beans have a lectin in them that can be toxic if not cooked properly. Lectin is a protein that is found in many beans and whole grains, but kidney beans have higher concentrations than most other edible foods. However, it can be rendered totally harmless by soaking the beans for at least 5 hours, draining and rinsing, and then boiling for at least 10 minutes. This rajma recipe meets all of those requirements because the beans are soaked and boiled in the pressure cooker. That is why I do not recommend making rajma with raw beans.
Is rajma healthy?
You can check the recipe card below for the full nutritional benefits. Kidney beans are a plant-based source of protein and iron. They're also high in fiber, and this recipe is low in fat, if you omit the heavy cream.

Rajma
Rajma is a warm, cozy kidney bean stew that is excellent served over rice.
Ingredients
- 1 cup dried kidney beans
- 2 tablespoons butter
- 1 tablespoon oil
- 1 medium onion, chopped
- 4 cloves garlic, minced
- 1” fresh ginger, grated
- ¼ teaspoon cayenne pepper
- ½ teaspoon cumin seeds
- 1 teaspoon ground coriander
- ½ teaspoon turmeric
- ½ teaspoon garam masla
- 1 14-ounce can of crushed tomatoes
- 1 teaspoon salt
- Fresh cilantro, for serving
- Optional: 2 tablespoons heavy cream
Instructions
- Gather the ingredients.
- First, soak the dried kidney beans for at least 8 hours. Rinse and drain before proceeding with recipe.
- Place the soaked kidney beans in the bottom of a pressure cooker or instant pot. Add enough water to cover the beans and so that 2” of water is above the beans.
Place the lid on the pressure cooker, and set it to cook for 15 minutes. When the time is up, carefully open the steam valve and let the pressure leave the pot before attempting to open it all the way. (If you don’t have a pressure cooker, simmer the kidney beans on the stove top for anywhere between 60-90 minutes, tasting beans to ensure they’re tender throughout. Do not cook kidney beans in a slow cooker—it can be toxic). - In a large stock pot, add the butter and oil and melt over medium heat. When the butter and oil are melted and sizzling, add the onion to the pan. Cook while stirring constantly until they’re starting to caramelize and turn golden brown. If they start burning around the edges, lower the heat and keep stirring.
- Next, add the garlic, ginger, cayenne, cumin seeds, coriander, turmeric, and garam masala to the pot. Toast the spices for at least 1 minute, stirring frequently.
- Add the crushed tomatoes and salt, and cook for about 5 minutes.
- Next, add the drained cooked kidney beans and 2 cups of water to the pan.Bring everything to a gentle simmer, and then turn off the heat. You can stir in the heavy cream, if you like.
- Serve with rice, naan, and chopped fresh cilantro on top.
Notes
Kidney Beans: This recipe cooks dried kidney beans from scratch, using an instant pot or pressure cooker. You may sub 2 15-ounce cans of already cooked kidney beans.
Butter: You can use unsalted butter or ghee.
Oil: Choose a neutral oil, like olive oil, vegetable oil, or grapeseed oil that doesn't impart any flavor to the dish.
Garlic: Four medium cloves, minced, or about 2 heaping teaspoons.
Fresh Ginger: Peel ginger with the back of a spoon, and then toss it in the freezer in an airtight bag or container. Then, grate it into the dish right from frozen.
Cayenne Pepper: Start with ¼ teaspoon, and add more, if you like things spicy.
Cumin Seeds: You can use ½ teaspoon of ground cumin instead of cumin seeds, if you like.
Ground Coriander: 1 teaspoon ground coriander.
Turmeric: Ground turmeric is so healthy, and so delicious!
Garam Masala: This is a spice blend of coriander, black pepper, cumin, cardamom and cinnamon.
Canned Tomatoes: Use canned crushed tomatoes.
Heavy Cream: Entirely optional, but incredibly lovely and very welcome in my bowl.
Nutrition Information:
Yield: 6 Serving Size: 1Amount Per Serving: Calories: 209Total Fat: 9gSaturated Fat: 4gTrans Fat: 0gUnsaturated Fat: 4gCholesterol: 16mgSodium: 513mgCarbohydrates: 27gFiber: 6gSugar: 5gProtein: 9g
Javonni
I know this calls for kidney beans, but it sounds so good I was wondering if I could use another bean? I don't have kidney beans on hand.
Beans4u
I think small red beans would be great here, too 🙂
Beans4u
Yes, do you have any small red beans? They would work well here 🙂
Synthia
I’m Indian, and this recipe was perfect! Made it for my 1.5 year old but my Indian husband and I loved it as well! Thank you
Beans4u
This is the nicest compliment, thank you so much 🙂
MaryAnn Coy
Once the kidney beans have been soaked and boiled for the prescribed time, then thoroughly rinsed, the Lectin is no longer an issue and the kidney beans can be cooked in a slow cooker. The rule of thumb is never cook raw kidney beans in the slow cooker. I cannot use cayenne pepper in cooking I’m seriously allergic to it. I’m thinking of substituting Kashmiri pepper for it. If that doesn’t work, I’ll try it without. Should still have a great savory flavor. I will try serving this with cooked brown basmati rice, cooked with some aromatic vegetables and seasonings. Would you serve with lemon or lime wedges?
Tony
Thanks for the links to the Indian food blogs!