Soups & Stews
This all-bean soup recipe transforms simple pantry staples into a hearty, smoky-spiced meal that's as nourishing as it is satisfying. The secret lies in combining dried beans, aromatic spices, and a rich broth that simmers into deep, complex flavors—perfect for cozy nights or meal prep. I've perfected this version to deliver tender beans, vibrant vegetables, and a smoky depth that makes every spoonful irresistible.
What makes this recipe stand out is its versatility—it's packed with plant-based protein, budget-friendly ingredients, and a method that lets flavors meld together over time. No special equipment is needed, just a large pot and patience (about 1 hour of simmering time). The smoky paprika and warm spices create an inviting aroma that fills your kitchen, while the combination of beans and vegetables ensures a satisfying texture with every bite.
By the end, you'll have a soup that's rich in flavor and nutrients, with beans that are tender yet hold their shape, vegetables that are perfectly cooked, and a broth that's thickened just enough to coat everything. The smoky notes from the spices add a layer of complexity that makes this more than just a simple bean soup—it's a comforting, restaurant-quality dish you'll want to make again and again.
Serve it with crusty bread to soak up every last drop or pair it with a simple green salad for balance. This recipe is designed to be flexible, so feel free to swap in different beans or vegetables based on what you have on hand. Let's get started on creating this hearty, flavorful soup!
Ingredients for all bean soup
Six cups of dried beans and pantry staples create a restaurant-quality smoky soup.
| Ingredient | Amount | Notes |
|---|---|---|
| Dried Black Beans 🥫 | 1 cup | Rinsed before cooking |
| Dried Kidney Beans 🥫 | 1 cup | Rinsed before cooking |
| Dried Pinto Beans 🥫 | 1 cup | Rinsed before cooking |
| Dried Navy Beans 🥫 | 1 cup | Rinsed before cooking |
| Carrots 🥕 | 3 medium | Peeled and chopped |
| Yellow Onion 🧅 | 1 whole | Diced |
| Celery Stalks 🧅 | 3 whole | Chopped |
| Garlic Cloves 🧄 | 4 cloves | Minced |
| Smoked Paprika 🌶️ | 2 tbsp | For smoky depth |
| Ground Cumin 🌿 | 1 tbsp | Toasted for warmth |
| Dried Thyme 🌿 | 1 tsp | Or 1 tbsp fresh |
| Vegetable Broth 💧 | 6 cups | Low-sodium preferred |
| Tomato Paste 🍅 | 2 tbsp | For richness |
| Extra-Virgin Olive Oil 🫒 | 2 tbsp | For sautéing |
| Sea Salt 🧂 | 1 ½ tsp | Adjust to taste |
| Black Pepper 🌶️ | ½ tsp | Freshly ground |
The beans are the heart of this soup, so buy them from the bulk section—they stay fresher longer. Bob's Red Mill or Trader Joe's bulk bins have excellent quality. If you're short on time, canned beans work in a pinch, but they won't have the same texture. The smoked paprika is non-negotiable for that deep, smoky flavor—Penzeys or McCormicklow-sodium vegetable broth is key to avoid over-salting. If you can't find it, use regular broth and reduce the salt later.
No smoked paprika? Substitute 1 tbsp regular paprika plus 1/2 tsp liquid smoke. Short on thyme? Dried oregano at half the amount works well. The carrots can be swapped for sweet potatoes or butternut squash—just adjust cooking time. For a quicker version, pre-soak the beans for 2 hours instead of overnight. The tomato paste is essential for richness, but if you're avoiding it, 1 cup crushed tomatoes will do. Always toast your spices—heat the cumin and paprika in a dry pan for 30 seconds before adding to the pot.
This soup tastes even better the next day as flavors meld. Store in an airtight container in the fridge for up to 5 days. For longer storage, freeze portions for 3 months. I like to portion it into mason jars—perfect for lunches. The beans will thicken the broth as they cook, so if it's too thin at the end, simmer uncovered for 5 more minutes. Leftovers reheat beautifully—just add a splash of water or broth if needed.
Why You'll Love This Recipe
- One-Pot Wonder: I swear by this recipe because it’s literally dump-and-go. Soak the beans overnight (or use canned if you’re in a rush), toss them all in a pot with carrots and broth, and walk away. No chopping, no fuss—just simmer until tender.
- Rich, Earthy Depth: The combo of black, kidney, pinto, and navy beans packs a flavor punch—smoky, slightly sweet, and hearty. Add a bay leaf and cumin, and you’ve got that cozy, restaurant-worthy taste without the pretension.
- Meal Prep MVP: This soup tastes even better the next day, which means I make a big batch on Sundays. It’s perfect for lunches, potlucks, or when I need to feed my book club without stressing over last-minute meals.
- Budget-Friendly Pantry Hero: Dried beans are my wallet’s best friend—cheap, shelf-stable, and packed with protein. A single batch feeds four for under $5, and the carrots add freshness without breaking the bank. Leftovers? Even better with toasted bread.
Step-by-step instructions for all-bean soup
A hearty, smoky bean soup built with four varieties of beans and warm spices—simple to make, packed with texture and flavor.
Prepare the Beans for Cooking
Combine all the 1 cup dried black beans, 1 cup dried kidney beans, 1 cup dried pinto beans, and 1 cup dried navy beans in a large bowl. Rinse them thoroughly under cold water, then transfer to a 6-quart pot. Cover with 2 inches of cold water and add 1 teaspoon of the sea salt. Let them soak for at least 2 hours—or overnight if possible. This ensures even cooking and prevents tough texture. Drain and rinse the beans again before proceeding.
Real talk: Soaking reduces cooking time and improves digestibility. If you forget to soak, you can still cook them—just increase the simmering time by 30-45 minutes. The beans should be tender but not mushy when done.
Sauté the Aromatics and Spices
Heat the 2 tablespoons of extra-virgin olive oil in a large Dutch oven or soup pot over medium heat. Add the diced yellow onion, chopped celery stalks, and chopped carrots. Cook for 5-6 minutes, stirring occasionally, until the vegetables soften and the onion becomes translucent.
Add the 4 minced garlic cloves, 2 tablespoons of smoked paprika, 1 tablespoon of ground cumin, and 1 teaspoon of dried thyme. Stir for 1 minute until the spices are fragrant and the garlic is golden. This step builds the flavor foundation—don’t rush it. If the spices burn, reduce the heat slightly and keep stirring.
Simmer the Beans with Broth and Tomato Paste
Add the drained beans to the pot along with the 6 cups of vegetable broth and 2 tablespoons of tomato paste. Stir well to combine, then bring the mixture to a boil over high heat. Once boiling, reduce the heat to low and let it simmer uncovered for 45-60 minutes, stirring occasionally. You’ll notice the beans will start to soften and the liquid will reduce slightly.
Here’s the thing—this simmering time ensures the beans become tender without falling apart. If the soup looks too thick, add ½ cup of water to maintain the right consistency. The beans are done when they’re fork-tender but still hold their shape.
Season and Finish the Soup
Taste the soup and adjust the seasoning with the remaining 0.5 teaspoon of black pepper and any additional sea salt as needed. The soup should be rich and well-balanced, with a deep smoky flavor from the paprika and warmth from the cumin. Let it simmer for another 5 minutes to allow the flavors to meld.
For the best texture, stir in the beans gently to ensure they’re evenly distributed. If you prefer a creamier soup, mash ¼ of the beans lightly with a fork or potato masher before serving. This adds body without requiring extra ingredients.
Pro Tips For Making All Bean Soup
- SOAK BEANS SEPARATELY: Black beans and kidney beans need 8–12 hours; pinto and navy beans do fine in 4. I learned this the hard way—mixing them all in one bowl overnight leaves kidney beans rubbery. Use two containers, or just skip soaking navy/pinto and add them later when the pot’s already hot.
- PEEL CARROTS HALFWAY: Cutting the carrots in half lengthwise before slicing saves time and keeps them from turning to mush. The exposed center cooks faster, so they stay firm while the outer edges soften. (Yes, even if you’re impatient like me—this isn’t optional.)
- DON’T SKIP THE BOIL: After soaking, give the beans a quick 5-minute boil in fresh water before adding to the pot. This washes off excess starch and prevents the soup from turning gluey later. I used to skip it, and the texture always suffered.
- SAUTÉ BEANS FIRST: Toss the drained beans in a dry pot over medium heat for 2–3 minutes before adding liquid. The Maillard reaction kicks in, deepening their flavor without burning them. (Your future self will notice the difference—trust me.)
Troubleshooting great all bean soup
Beans Too Hard?
If your beans aren't tender after 60 minutes of simmering, they likely need more time or proper soaking. The key is patience—never rush this step. I’ve found that kidney beans often take the longest, sometimes needing an extra 30 minutes. If you forgot to soak, add 1 tsp baking soda to the pot and simmer for 10 more minutes to help soften them. 💡
Broth Too Thin?
If your soup is watery, it’s usually because the beans released too much starch. Let it simmer uncovered for 10-15 minutes to reduce naturally. For an instant fix, mash ¼ cup of the beans with a fork to thicken the broth. If you prefer a creamier texture, stir in 2 tbsp cornstarch mixed with 2 tbsp cold water and simmer for 2 minutes until thickened.
Spices Too Overpowering?
Smoked paprika and cumin can dominate if not balanced. Start with 1 tbsp of each and taste as you go. If the flavors are too strong, add ½ cup of coconut milk or a splash of vegetable broth to mellow them out. A pinch of sugar (just ½ tsp) can also help balance the heat. 🌶️
Vegetables Mushy?
Overcooking carrots and celery turns them mushy. Add them to the pot only after the beans have simmered for 30 minutes—this ensures they cook just enough without breaking down. For extra flavor, roast the veggies at 400°F for 20 minutes before adding them to the soup. This caramelizes their natural sugars and adds depth.
Soup Too Salty?
If your soup tastes too salty, don’t panic. Add ½ cup of water or broth and let it simmer for 5 minutes to dilute the salt. For a natural fix, stir in 1 tbsp of lemon juice or ½ cup of unsalted tomato sauce to balance the flavors. Avoid adding more liquid too quickly—it can dilute the soup’s richness.
Leftover Texture Issues?
Reheating soups can make beans mushy. To fix this, stir in 1-2 tbsp of cold water or broth before reheating, then simmer gently over low heat for 5-10 minutes. For a smoother texture, blend ½ cup of the soup and stir it back in. If the soup is too thick, add a splash of water or broth and adjust as needed. ❄️
Nutrition facts
Frequently asked questions
Can I use canned beans instead of dried?
Yes, but the texture will be different. Canned beans cook faster and won't have the same hearty, tender quality. If you must use them, drain and rinse well, then simmer for just 15-20 minutes to blend flavors. For best results, reduce the broth by 1 cup since canned beans release less starch.
How do I make this soup spicier?
Add ½ teaspoon cayenne pepper or 1 teaspoon chipotle powder when sautéing the aromatics. For extra heat, stir in 1 diced jalapeño during the final 5 minutes of simmering. Always taste first—you can adjust more easily than removing heat!
What's the best way to store leftovers?
Cool the soup completely, then transfer to an airtight container. It keeps in the fridge for 5 days or freezes for 3 months. For reheating, add 2 tablespoons of water or broth per cup of soup to prevent thickening. Never microwave directly from frozen—thaw overnight first.
Can I make this soup in an Instant Pot?
Sauté the veggies and spices first, then add all ingredients except tomato paste. Seal the lid, cook on high pressure for 20 minutes, then quick-release. Stir in tomato paste and simmer on low heat for 5 minutes to blend flavors. The pressure cooker cuts simmering time by half!
What beans can I substitute if I don't have all four?
Use any combination totaling 4 cups of dried beans. Great swaps: lentils (for creaminess), white beans (for mild flavor), or chickpeas (for texture). Just adjust cooking time—lentils need only 15 minutes after adding to the pot.
