Frijoles Charros| Mexican Bean Soup

Frijoles Charros is a filling Mexican soup made using beans, which is believed to be invented by the cowboys of the olden days. The cowboys (aka ‘charros’) would slow-cook pinto beans, onions, garlic, tomatoes, bacon, sausages, cilantro and other ingredients, till it reached a thick soup-like consistency – this is the dish that came to be known as Frijoles Charros. In today’s post, I am going to share with you all the recipe for this Mexican Bean Soup, my way, arrived at after several trials and tribulations.

This is a vegetarian version of the Mexican Bean Soup, made using no fancy ingredients or difficult techniques. As always, I have used only ingredients that are commonly available around me, in Bangalore. I am not saying this is an authentic recipe, but I know it definitely tastes delicious. Taste-wise, it comes very close to the bean soup available in Mexican eateries here. Ultimately satisfying and comforting, this Mexican Bean Soup can double up as lunch or dinner. With the rain in Bangalore showing no signs of letting up, this is just the perfect thing to have!

How to make Mexican Bean Soup

Here is how I go about it. Don’t be fazed by the long list of ingredients or the many steps in the proceedure. Trust me, it’s not a very difficult soup to put together. There are several separate steps that need to be executed before it all comes together to make the soup – every one of these is simple.

Ingredients (serves 4-5):

1. 3/4 cup rajma beans

2. 1/2 cup sweet corn kernels

3. 1 small onion

4. 5-6 garlic cloves

5. 1 small capsicum

6. 1 small carrot

7. 4 medium-sized tomatoes

8. 1/2 tablespoon oil

9. Salt to taste

10. Red chilli powder to taste

11. 3/4 tablespoon jaggery powder to taste (optional)

12. 3/4 tablespoon corn flour

13. 1-1/2 teaspoons Mexican seasoning or as needed

14. 1 tablespoon tomato ketchup (optional)

15. 3/4 tablespoon soya sauce (optional)

16. Juice of 1/2 lemon or to taste

17. Grated cheese, as needed for garnishing


1. Soak the rajma beans in enough water for 8-10 hours or overnight.

2. When the beans are done soaking, drain out all the water. Discard the water. Transfer the soaked beans to a wide vessel and add in enough fresh water to cover them completely. Place the vessel in a pressure cooker. Pressure cook on high flame for 8-10 whistles or till the beans are well cooked. Let the pressure release naturally.

3. In the meantime, we will get the veggies ready. Peel the carrot, onion and garlic and chop them finely. Remove the seeds and core from the capsicum and chop finely too. Thaw the sweet corn kernels and keep them ready.

4. Steam the carrot and sweet corn kernels till done. Keep them ready.

5. Chop the tomatoes roughly. Puree them smoothly. Keep aside.

6. When the pressure from the cooker has completely gone down, check if the beans are soft enough. You should be able to crush them easily using two fingers. If you feel any hardness to them, you might have to pressure-cook them for a couple more whistles. Again, in that case, wait for the pressure to go down fully, naturally. When done, get the cooked beans out and keep them ready. Do not discard the water the beans were cooked in.

7. Take the tomato puree in a heavy-bottomed pan and place it over high heat. When the mixture heats up, reduce flame to medium. Cook on medium flame for 4-5 minutes or till the raw smell of tomatoes goes away completely and the puree thickens. Stir intermittently to prevent sticking to the bottom of the pan. When done, switch off gas and keep ready.

8. Heat oil in a heavy-bottomed pan. Add in the chopped onion, garlic and capsicum. Saute for 2-3 minutes on medium flame or till the veggies get cooked with a bit of crunch.

9. At this stage, add the steamed carrot and sweet corn kernels to the pan. Continue to keep the flame at medium.

10. Immediately add the cooked beans to the pan, along with the water they were cooked in.

11. Slightly crush some of the beans.

12. Now, still continuing to keep the flame at medium, add in the cooked tomato puree. Also add in the salt, jaggery powder and red chilli powder. Mix well. Let everything cook together on medium flame for 2-3 minutes.

13. Immediately add about 1-1/2 to 2 cups of water to adjust the consistency of the soup. In a small bowl, mix the cornflour with about 2 tablespoons of water to make a lump-free slurry, then add this to the pan, stirring constantly. Let the mixture cook on high flame for 3-4 minutes or till it thickens up a bit. Switch off gas at this stage.

14. Add in the Mexican seasoning, followed by the tomato ketchup and soya sauce, if using.

15. Also add in the lemon juice. Mix well. The Mexican Bean Soup is ready. Serve hot, garnished with grated cheese.

Tips & Tricks

1. I have used spotted Chitra rajma beans (from the foothills of the Himalayas) here. You can use any other variety of rajma (the small red Kashmiri beans or the large red ones that are very commonly available). You could also use any other variety of dried bean (white bean, black bean, butter bean, etc) instead.

2. The Chitra rajma took me a long time to pressure cook – almost 10 whistles – even after soaking it overnight. Adjust the cooking time as per the type of bean that you use. Remember that the beans should be well-cooked and soft, for a hearty and flavourful soup, but not overly mushy.

3. I have used Mexican seasoning by Keya here. If you don’t have it, you could use pasta/Italian seasoning + a dash of roasted cumin powder.

4. Paprika can be used in place of the red chilli powder I have used here.

5. The soya sauce and tomato sauce are optional. Skip them if you don’t prefer using them. I add them because they lend a beautiful flavour to the soup.

6. If using soya sauce, be careful while adding salt. Soya sauce contains quite a bit of salt already.

7. You can skip the cornflour if you prefer not to use it or use wheat flour instead. The soup will be slightly less thick if cornflour is not used.

8. I strongly suggest using jaggery powder as it lends a lovely taste to the soup. However, if you are against it, you could skip it.

9. I have used a vegetable steamer to steam the carrot and sweet corn kernels. You could use a pressure cooker instead.

10. Remember not to overcook the veggies. For a great-tasting soup, the veggies should be cooked through but still retain some amount of crunch.

11. I have used natural Cheddar cheese from D’lecta to garnish the soup. You could also use sliced jalapenos, olives and nachos for garnishing, if you prefer.

12. I have used frozen sweet corn kernels here. You could extract them from a whole corn cob instead, too.

13. Adjust the amount of water you use, depending upon how thick you want the soup to be.

14. Adjust the amount of lemon juice you use, depending upon the level of sourness you prefer.

15. This soup is completely vegetarian. If you want to make it vegan (plant-based), skip the cheese used in the garnishing or use vegan cheese instead. For a gluten-free version, do check out the ingredient list of the soya sauce and tomato sauce you use, and make sure it is free of wheat or any wheat-based products.

Other soup recipes on the blog

I have quite a few other soup recipes on the blog, which you might like to check out.

Italian Flavoured Tomato Soup| Sweet Corn Soup From Scratch| Lemon Coriander Soup| Palak Ka Shorba| Dal Ka Shorba| Karnataka Bonda Soup| Tom Kha or Vegetarian Thai Coconut Soup| Broccoli Almond Soup| Hot & Sour Vegetable Soup| Thai Tom Yum Vegetable Soup| Gujarati Moong Bean Soup

Did you like this recipe? Do tell me in your comments!


3 thoughts on “Frijoles Charros| Mexican Bean Soup

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s