Soups & Stews
This bean blend soup recipe delivers hearty, protein-rich warmth in a single pot, perfect for cozy nights or meal prep. The magic lies in combining three different beans—black, kidney, and pinto—for a texture and flavor profile that’s both satisfying and balanced.
I’ve tested this recipe countless times, and it never fails to impress, whether served as a main dish or paired with crusty bread. The beauty of this soup is its versatility—it’s naturally vegan, gluten-free, and packed with plant-based protein.
You’ll start with sautéed aromatics like onion and garlic, then build layers of flavor with cumin, smoked paprika, and a splash of tomato paste. The beans simmer until tender, absorbing the rich, savory broth while maintaining their structure.
By the end, you’ll have a deeply flavorful, fiber-rich soup with just the right balance of smoky, earthy, and slightly sweet notes. The beans hold their shape beautifully, creating a hearty bite in every spoonful.
It’s the kind of recipe that tastes even better the next day, making it ideal for batch cooking. Serve it as-is for a clean, plant-based meal, or top with avocado, lime, or a sprinkle of fresh cilantro for extra brightness. Here’s how to make it—simple, foolproof, and always delicious.
Ingredients for bean blend soup
Three beans, one pot, endless flavor—this is your go-to hearty vegan soup.
| Ingredient | Amount | Notes |
|---|---|---|
| Black Beans 🌱 | 1 ½ cups | Dried, soaked overnight |
| Kidney Beans 🌱 | 1 ½ cups | Dried, soaked overnight |
| Pinto Beans 🌱 | 1 ½ cups | Dried, soaked overnight |
| Yellow Onion 🧅 | 1 whole | Diced, medium size |
| Garlic Cloves 🧄 | 4 cloves | Minced, fresh preferred |
| Ground Cumin 🌿 | 1 ½ tsp | Toasted for depth |
| Smoked Paprika 🌶️ | 1 tsp | Smoked variety for richness |
| Tomato Paste 🍅 | 2 tbsp | Smooth, no sugar added |
| Vegetable Broth 💧 | 4 cups | Low-sodium preferred |
| Extra-Virgin Olive Oil 🫒 | 2 tbsp | For sautéing aromatics |
| Lime Juice 🍋 | 2 tbsp | Freshly squeezed |
| Sea Salt 🧂 | 1 ½ tsp | Adjust to taste |
| Black Pepper 🌶️ | ½ tsp | Freshly ground |
| Cilantro Leaves 🌿 | ¼ cup | Fresh, chopped for garnish |
The beans are the soul of this soup, so don’t skip the soaking. I grab my dried beans from Whole Foods bulk bins—they’re fresher and cheaper than canned. Black beans bring earthiness, kidney beans add hearty texture, and pinto beans round out the flavor. If you’re in a rush, use canned beans (drained and rinsed), but trust me, dried beans taste infinitely better. For the best flavor, soak overnight—it’s worth the extra time. If you’re short on time, quick-soak them in boiling water for 2 hours.
No smoked paprika? Regular paprika plus a pinch of liquid smoke gets you close. Fresh garlic and onion are non-negotiable here—they’re the flavor foundation. The tomato paste is where the depth comes from, so don’t use the watery canned stuff. For extra richness, stir in a spoonful of tahini at the end. The broth matters too—low-sodium is key so you can control the salt. If you’re feeling fancy, add a splash of vegan Worcestershire sauce for umami. And if you’ve got avocado on hand, toss some in at the end for creaminess.
This soup tastes even better the next day—make a double batch and freeze half. Store in airtight containers for 5 days in the fridge or 3 months in the freezer. Reheat gently on the stove with a splash of water to keep it from getting gluey. I always keep a pot on hand for quick lunches—just reheat and top with fresh cilantro and lime. The beans hold up perfectly, so it’s a great make-ahead meal.
Why You'll Love This Recipe
- I’ll be real: feeding a family for under $10 is rare. But this soup? It’s my secret weapon. The beans stretch forever, the onion adds layers without cost, and the garlic? That’s the flavor multiplier that makes every bite feel special.
- Pantry Magic: I swear by this soup because it’s the kind of recipe that laughs at your grocery list. Three beans, an onion, and garlic? That’s it. No fancy pantry trips—just what’s already hiding in your cupboard, waiting for a hero moment.
- Savory Depth: Here’s what sold me—the way those black, kidney, and pinto beans soak up the garlic and onion until the broth is rich but never heavy. That earthy-sweet balance? It’s the kind of flavor that makes you pause mid-sip, like, “Wait, how did this get so good?”
- Weeknight Workhorse: Between us, this is my go-to when I’ve got a house full of hungry people and zero energy. Double the batch, freeze half, and boom—you’ve got a meal for next Tuesday too. (Yes, even on a Tuesday night.)
Step-by-step instructions for bean blend soup
This hearty three-bean soup comes together in one pot with layers of smoky, zesty flavor.
Sauté Aromatics Until Fragrant
Heat the 2 tablespoons extra-virgin olive oil in a large pot over medium heat. Add the 1 whole diced yellow onion and cook for 5-6 minutes until softened and translucent. You'll know it's ready when the onion releases its sweet aroma and the edges begin to caramelize slightly.
Add the 4 minced garlic cloves and cook for another 30 seconds until fragrant—don't let it brown or it'll turn bitter. Here's the thing: garlic burns fast, so keep an eye on it. Stir constantly to distribute the heat evenly and prevent sticking. This aromatic base forms the flavor foundation for the entire soup.
Toast Spices and Add Tomato Paste
Reduce heat to medium-low and add the 1.5 teaspoons ground cumin and 1 teaspoon smoked paprika. Toast the spices for 1 minute, stirring constantly, until you can smell their deep, earthy aroma. This step develops their flavors and removes any raw taste.
Next, stir in the 2 tablespoons tomato paste and cook for 2 minutes until it darkens slightly and blends completely with the spices. The paste will thicken and deepen in color, creating a rich base that balances the beans' earthiness. Don't skip this step—it's what gives the soup its signature depth and prevents a metallic aftertaste from the beans.
Combine Beans and Broth
Add the drained 1.5 cups black beans, 1.5 cups kidney beans, and 1.5 cups pinto beans to the pot. Stir to coat them evenly with the spiced oil mixture. Pour in the 4 cups vegetable broth and bring everything to a gentle boil over medium-high heat. Once boiling, reduce heat to low and let it simmer uncovered for 45-50 minutes.
You'll notice the beans start to break down after about 20 minutes, releasing their starches into the broth. This is when the soup begins to thicken naturally. Stir occasionally to prevent the beans from sticking to the bottom. The longer they simmer, the more flavor they'll absorb from the broth and spices.
Finish with Acid and Seasoning
After 45 minutes, stir in the 2 tablespoons lime juice, 1.5 teaspoons sea salt, and 0.5 teaspoon black pepper. The lime brightens all the deep, earthy flavors while cutting through any richness. Taste and adjust the seasoning—you might need a bit more salt depending on your broth.
Simmer for another 10 minutes to let the flavors meld completely. The soup should be thick enough to coat the back of a spoon but still have a pleasant mouthfeel. If it's too thick, add ½ cup water and simmer for 5 more minutes. This final adjustment ensures the perfect consistency for serving.
Garnish and Serve Warm
Ladle the soup into bowls and garnish each serving with 0.25 cup chopped cilantro leaves. The fresh cilantro adds a bright, herbaceous contrast to the smoky, spiced beans. Serve immediately with warm crusty bread or over rice to soak up every last bit of that flavorful broth.
Real talk: this soup tastes even better the next day as the flavors continue to develop. The beans will soften further, and the spices will deepen. Store leftovers in an airtight container in the refrigerator for up to 4 days, or freeze for 3 months. Just reheat gently on the stove with a splash of water or broth to restore the perfect texture.
Pro Tips For Making Bean Blend Soup
- SOAK BEANS OVERNIGHT: I used to toss them in cold water for 2 hours and wonder why they stayed tough—beans need time to soften properly. Soak black and pinto beans overnight (kidney beans take 8 hours minimum), then drain and rinse before cooking. This cuts down on simmering time and keeps them from turning mushy.
- SAUTÉ ONIONS LOW AND SLOW: Cranking the heat for onions is a rookie move—they’ll burn before they sweeten. Cook them over medium-low for 10-12 minutes, stirring often, until they’re deep golden and almost jammy. That’s when their flavor actually starts working with the beans, not fighting them.
- SKIP THE SALT IN SOUP WATER: Adding salt to the pot before beans simmer makes them tougher and splits the skins—trust me, I’ve ruined batches doing this. Wait until the beans are tender before seasoning, then adjust to taste. Your future self will notice the difference in texture right away.
- USE GARLIC LIKE A PRO: Smashing whole garlic cloves with the flat of your knife (instead of mincing) keeps them from burning while adding a richer depth. Add them to the pot with the onions, and let them cook until fragrant but not browned—just a soft golden color. Overcooked garlic turns bitter, and nobody wants that in soup.
Troubleshooting this dish
Beans Too Soft?
If your beans turn mushy, you likely overcooked them. I’ve learned the hard way—45-50 minutes is the sweet spot for dried beans. If using canned beans, reduce simmering time to 15-20 minutes after adding to the pot.
For extra insurance, add beans to the broth when it’s just boiling, then reduce heat immediately to low. This gentle simmer preserves texture while allowing flavors to meld. 🌱
Broth Too Thin?
Thin broth happens when beans release too much starch. If this occurs, let the soup simmer uncovered for 10-15 extra minutes—the liquid will reduce naturally. For a quicker fix, mash 1-2 beans with a fork and stir into the broth.
The released starch thickens the soup instantly. Avoid adding flour or cornstarch—it can make the soup taste flat. Trust the beans’ natural thickening power!
Flat or Bland Flavor?
Flavor fades when spices aren’t toasted or acid isn’t balanced. Toast your cumin and smoked paprika for 1 full minute—this unlocks their depth. If the soup tastes dull, finish with 1 extra tablespoon lime juice or a pinch of chili powder.
For umami, stir in 1 teaspoon soy sauce (vegan-friendly) or a splash of vegetable bouillon. The key is layering—don’t rush the simmering to let flavors develop. ✨
Skin or Foam on Top?
This happens when beans break down too much or oil isn’t controlled. Skim off foam with a spoon while simmering. For a cleaner finish, add ½ teaspoon baking soda (just before serving)—it neutralizes bean skins naturally.
If the soup looks oily, stir in 1 tablespoon cornstarch mixed with cold water and simmer for 2 minutes to absorb excess fat. Pro tip: Use medium heat when sautéing onions to avoid excess oil release.
Grainy or Chalky Texture?
This usually means beans weren’t soaked long enough or broth was added too early. Soak beans overnight (or quick-soak for 2 hours) to soften them properly. If using canned beans, rinse thoroughly to remove excess sodium and starch.
For a smoother texture, blend ½ cup of the soup and stir it back in—just don’t over-blend or it’ll turn gluey. A splash of tomato juice also helps balance any graininess. 💡
Too Salty?
If your broth was high-sodium, don’t panic—acid and fresh ingredients save the day. Stir in 1 extra tablespoon lime juice or ½ cup unsalted tomato sauce to cut the saltiness.
For a vegan option, add ½ cup coconut milk (light) or 1 mashed avocado to dilute the salt while adding creaminess. Avoid adding water—it thins the soup and weakens flavors. Taste as you go!
Nutrition facts
Frequently asked questions
Can I substitute canned beans for dried in this recipe?
Yes, but adjust the cooking time! Use 3 cups total canned beans (1 cup each black, kidney, and pinto) and simmer for only 15-20 minutes after adding to the pot. Drain and rinse them thoroughly first to remove excess sodium. The texture will be slightly softer than dried beans but still delicious.
How do I make this soup spicier?
Add ½ teaspoon cayenne pepper with the cumin and paprika, or stir in 1-2 diced jalapeños with the onions. For heat lovers, finish each bowl with a dash of hot sauce or a sprinkle of red pepper flakes. The lime juice will help balance the spice beautifully.
Is this soup freezer-friendly?
Let the soup cool completely, then portion into airtight containers. It freezes for 3 months without losing flavor. Thaw overnight in the fridge and reheat gently on the stove with a splash of water or broth to restore creamy texture. The beans hold up perfectly.
Can I make this gluten-free?
Yes, this recipe is naturally gluten-free! Just ensure your vegetable broth and smoked paprika contain no wheat additives. Double-check labels on spices and broth to confirm. The original recipe uses simple, whole-food ingredients that are safe for gluten-sensitive diets.
What's the best way to reheat leftovers?
Reheat gently on the stove over low-medium heat with 2-3 tablespoons water or broth per serving. Stir frequently to prevent sticking and avoid overcooking the beans. Microwaving works too, but the texture may become slightly watery. Always reheat until steaming hot.
