This Mexican-inspired pinto bean soup is creamy, hearty, nourishing, and packed with flavor! Combining pinto beans, fire-roasted tomatoes, veggies, broth, and Mexican seasonings leads to a soup that is ridiculously more-ish. Plus, this recipe can be made in just one pot, is gluten-free, dairy-free, vegetarian (vegan), high-protein, high-fiber, low-fat, and not to mention low-cost!
Simple & Delicious Mexican Bean Soup
When it comes to Mexican cuisine, legumes are everything for the meat-free eaters out there; chickpeas, kidney beans, black beans, and – of course- pinto beans. The humble pinto bean isn’t quite as ‘popular’ globally as the others, yet appears in some of my favorite Mexican food; chili, Mexican spiced beans, burritos, over nachos, and for refried beans (frijoles refritos).
In comparison to kidney/black beans, pinto beans are softer, creamier, with a slightly earthier, nutty flavor. They’re perfect for blending up into a creamy soup or for stews. Even though I always have a whole variety of beans in my house (dried and canned), I don’t find myself reaching for the pinto beans as often as the others. So I thought I’d share this recipe that gives them a chance to shine!
This pinto bean soup blends Mexican-inspired flavors for a creamy, hearty soup option for the Fall/Winter months. Simmered for 20-25 minutes, this soup allows all the flavors to combine and the beans to soften into a deliciously buttery texture, packing tons of flavor with such a little amount of effort (in a way – similar to a meat-free cowboy soup).
This is comfort food at its best – thick, hearty, satisfying, and truly nourishing while somehow remaining healthy too. Serve this Southern pinto beans recipe as an appetizer or main and you’re sure to have lots of satisfied eaters. Plus, most of the recipe is made up of inexpensive pantry staples and veggies – for a low-cost midweek meal.
Healthy Wholesome Pinto Bean Soup
Not only is this vegan soup low-cost to make, but it’s also a healthy option for the entire family.
Beans are packed with wholesome goodness for our bodies, including being one of the richest sources of plant-based protein and fiber on the planet. They have the ability to regulate blood sugar levels, reducing cholesterol, improving heart health, and even reducing the risk of certain cancers.
Pinto beans are not only a great source of protein and fiber, but they also contain antioxidants, vitamins (especially B1 / Thiamine), and minerals like iron, magnesium, phosphorus, and potassium.
Combined with the likes of carrots, onion, tomatoes, and potatoes – this Mexican bean soup really is a healthy, wholesome, and nutrient-packed meal!
The Step-By-Step Instructions
For the full ingredients list, ingredient measurements, and nutritional information, then please read the recipe card below.
Step 1. Heat oil in a large pot over medium-high heat. Once hot, add the onion and sauté for about 4-5 minutes, stirring frequently, until it begins to soften and starts going translucent.
Step 2. Stir in the roasted tomatoes, garlic, carrots, potato, and all the spices. Cook for 1-2 minutes, until fragrant, then pour in the vegetable broth (I also added 2 bay leaves for flavor).
Step 3. Bring the soup to a boil, then reduce the heat and allow it to simmer, with a lid on, for between 10-15 minutes to begin softening the vegetables. Add the pinto beans, then cook for a further 10 minutes, or until the veggies are all tender- stirring occasionally.
Step 4. Once ready, turn off the heat. Now you can decide on the texture you want for the dish. If you want it as more of a pinto bean stew, then you could leave it chunky as-is. Alternatively, you can use an immersion blender to slightly puree some or all of the soup or even move 50% of the soup to a blender/different pot to completely puree before transferring back to the pot and stirring well.
Step 5. Finally, taste the soup and adjust any of the seasonings as required. Add a little extra veggie broth/water if it’s a little too thick, then serve immediately.
How To Serve
I like to serve this pinto bean soup garnished with fresh herbs, such as cilantro or parsley, and lime wedges. You can add the lime juice directly into the large pot, but I’ve found that different people like different levels.
There are several ways to serve and garnish this wholesome soup/stew:
- If you puree a part of the soup, then you can serve it over rice.
- Whether served as a stew or soup, this goes wonderfully with this gluten-free bread, bread rolls, or cornbread.
- For extra spice, you could top this soup with sliced jalapeño or some hot sauce.
- Similarly to my tortilla soup, you could serve it along with homemade tortilla chips (or store-bought options).
- Feel free to sprinkle with some dairy-free crumbled feta or other vegan cheese (like queso fresco).
- You could top it with a dollop of vegan sour cream and salsa
- Top with some fresh veggies like sliced radish, diced tomatoes, or sliced avocado.
How To Store
Any leftovers can be stored in an airtight container in the fridge for 3-4 days. It may thicken slightly while chilled, so feel free to add a little extra water when reheating. It should also be freezer-friendly, though it isn’t something I’ve tried.
- I tend to cook the soup on the stove, though it should also work well in a crock-pot/slow cooker. I would still sauté the onion first, then add all the ingredients (including soaked but not cooked beans from dry) and cook for 8 hours on low or 4 hours on high. The exact time depends on your slow cooker. Canned beans can become a bit too soft/mushy otherwise – though this isn’t too important if you’re planning to puree the soup.
- The Fire-Roasted Tomatoes: I use fresh sliced tomatoes roasted with a little olive oil at 450F for 30 minutes. However, you can use 1 (14oz) can of fire-roasted tomatoes instead.
- The Pinto Beans: I typically cook pinto beans from dry. However, for this recipe, I used canned beans. Check out my Instant Pot Refried Beans recipe on how to cook pinto beans from dry as they need to be cooked before adding to this recipe.
- Feel free to adjust the spiciness to your liking. You could add ancho chili powder for sweet and smoky spice or use regular chili powder.
- You can substitute other beans in place of the pinto though they will all affect the flavor and texture in different ways. Black beans, cannellini beans, or navy beans could work well.
- Add a little extra oil (such as avocado oil or olive oil) or plant-based cream to add a little ‘silkiness’ to the texture of the soup.
- If you’re short on time, then you can minimize the cooking time by using the tinned beans alongside microwaving the carrots and potatoes with a spoonful of water for 1-2 minutes, till slightly tender. This will reduce the time needed to cook them till tender. You can then add them and the beans to the soup at the same time and cook for 10-15 minutes maximum.
- For an additional smoky flavor, you could add a little liquid smoke to the soup.
Other Mexican-Inspired Recipes
- Homemade Gluten-Free Tortillas
- Lentil Enchiladas
- Breakfast Burritos
- Taco Cups
- Black Bean Quesadillas
- Loaded Nacho Fries
- Oven Roasted Vegetable Fajitas
If you give this pinto bean soup recipe a try, I’d love a comment and recipe rating below. Also, don’t forget to tag me in re-creations on Instagram or Facebook with @elavegan and #elavegan – I love seeing your recreations.
Pinto Bean Soup
- 1 tbsp olive oil
- 1 medium onion diced
- 1 14 oz can fire-roasted tomatoes (*see notes)
- 3 garlic cloves minced
- 2 small (150 g) carrots peeled and diced
- 1 medium (135 g) potato peeled and diced
- 1 tsp oregano dried
- 1 tsp ground cumin
- 1 tsp smoked paprika
- Red pepper flakes to taste
- 2 bay leaves (optional)
- 2 cups vegetable broth
- 2 14 oz cans pinto beans drained and rinsed (*see notes)
- Salt and pepper to taste
- Heat oil in a large pot over medium/high heat. Add onion and sauté for about 4-5 minutes, stirring frequently.
- Stir in the roasted tomatoes, garlic, carrots, potato, and all spices. Cook for 1-2 minutes, until fragrant, then pour in the vegetable broth (I also added 2 bay leaves for flavor).
- Bring the soup to a boil and let it simmer with a lid for about 10-15 minutes. Add in the pinto beans and cook for a further 10 minutes or until the veggies are softened, stirring from time to time. Then turn off the heat.
- You can add more veggie broth or water if you notice that too much liquid evaporated.
- I poured about 50% of the soup into a different pot and used an immersion blender to blend it. You can also fill about half of the soup into a blender and blend it to the desired consistency.
- Then pour the blended soup back into the large pot and stir to combine. Taste it and add more salt/pepper/spices if needed. You can also add a little lime juice.
- Serve in bowls and garnish with fresh herbs. Enjoy!
- Fire-roasted tomatoes: I used fresh tomatoes (sliced) and roasted them (drizzled with olive oil) in the oven at 450 degrees Fahrenheit for 30 minutes. However, you can use 1 (14 oz) can of fire-roasted tomatoes instead, as mentioned in the recipe.
- Pinto beans: The weight of the drained beans is about 250 g per 14 oz can. I typically cook pinto beans from dry, however, for this recipe I used canned beans. Check out this recipe for Instant Pot Refried Beans to find out how to cook pinto beans from dry.
- Texture: You can blend just a part of the soup, half of it, or all of it.
- Read the blog post for serving suggestions, step-by-step photos, and helpful tips.
If you are using Pinterest, feel free to pin the following photo: