Soups & Stews
This bean soup recipe with pinto beans delivers restaurant-quality depth in a single pot, where smoky spices and tender beans create a hearty vegetarian masterpiece. The secret lies in slow simmering—transforming simple ingredients into a rich, flavorful broth that coats every bite.
I developed this recipe after years of refining techniques to balance earthy beans with vibrant spices, ensuring each spoonful is both satisfying and balanced.
The foundation starts with sautéed aromatics—onions, garlic, and cumin—that build a fragrant base before adding dried pinto beans and vegetable broth. A touch of chipotle powder infuses that signature smokiness, while cumin and oregano add warmth.
The beans simmer until perfectly tender, absorbing all the flavors without losing their natural texture. This method guarantees a soup that's hearty enough for a main dish but simple enough for a weeknight dinner.
What sets this recipe apart is its versatility—adjust the spices to your taste or stir in coconut milk for a creamy twist. The result is a soup with complex layers: smoky, slightly sweet, and deeply savory, with beans that hold their shape yet melt in your mouth.
Serve it with crusty bread to soak up every last drop, or top with fresh cilantro and avocado for a bright finish. This is comfort food at its finest, packed with protein and flavor.
Whether you're meal prepping for the week or craving a quick, nourishing dinner, this recipe delivers foolproof results every time. The one-pot approach means minimal cleanup, while the slow cooking process infuses the beans with maximum flavor. Trust me—once you try this, store-bought soup will never compare again.
Ingredients for bean soup recipe with pinto beans
Sixteen ingredients transform into a restaurant-worthy vegetarian bean soup with smoky depth.
| Ingredient | Amount | Notes |
|---|---|---|
| Dried Pinto Beans 🌽 | 1 ½ cups | Rinsed before cooking |
| Vegetable Broth 💧 | 4 cups | Low-sodium preferred |
| Yellow Onion 🧅 | 1 whole | Diced, medium size |
| Garlic Cloves 🧄 | 4 cloves | Minced, fresh preferred |
| Chipotle Powder 🌶️ | 1 tbsp | For smoky depth |
| Ground Cumin 🌿 | 1 tbsp | Toasted for warmth |
| Dried Oregano 🍃 | 1 tsp | Mexican preferred |
| Olive Oil 🫒 | 2 tbsp | Extra-virgin for richness |
| Coconut Milk 🥥 | ½ cup | Full-fat for creaminess |
| Fresh Cilantro 🌿 | ¼ cup | Chopped, for garnish |
| Lime 🍋 | 1 whole | Juiced, for brightness |
| Salt 🧂 | 1 tsp | Adjust to taste |
| Black Pepper 🌶️ | ½ tsp | Freshly ground |
| Avocado 🥑 | 1 whole | Sliced, optional topping |
The pinto beans are the heart of this soup, so choose dried over canned—they absorb flavors better and hold their texture. Bob's Red Mill or store-brand dried beans work perfectly. For the broth, low-sodium vegetable broth is key—it lets the spices shine without overpowering. The chipotle powder is non-negotiable for that signature smoky flavor; Penzeys or Trader Joe's carry excellent options. Toast your cumin seeds in a dry pan for 30 seconds before grinding to release their aroma—worth the extra minute for depth.
No chipotle powder? Substitute smoked paprika plus a pinch of cayenne for heat. Fresh cilantro missing? Dried oregano at one-third the amount works in a pinch. The coconut milk adds creaminess without dairy—full-fat canned coconut milk is ideal, but light works too. For extra richness, stir in 1 tbsp tahini at the end. The avocado is optional but adds freshness; if you skip it, top with a dollop of Greek yogurt for creaminess. Lime juice should be freshly squeezed—bottled juice lacks brightness.
This soup tastes even better the next day as flavors meld. Store in an airtight container in the fridge for 4-5 days or freeze for 3 months. For meal prep, double the batch and portion into containers—reheat with a splash of water or broth to restore texture. The aromatics (onion, garlic) can be prepped ahead and stored in the fridge for 3 days to save time on cooking day.
Why You'll Love This Recipe
- Foolproof Soak: I’ll admit, I used to dread soaking beans—but these pinto beans? Just toss them in cold water overnight (or quick-soak them for 2 hours), and they’re ready. No fancy techniques, no stress—just set it and forget it while you prep dinner.
- Smoky Depth Magic: That chipotle powder isn’t just seasoning—it’s the secret weapon. A single teaspoon turns this soup from basic to ridiculously good, adding warmth that lingers. Honestly, I’ve tried it without, and I always regret it.
- Leftover Legend: This soup actually gets better the next day. The flavors meld, the beans soften just right, and reheating takes two minutes. My lunchbox is full of it for days—no sad, soggy leftovers here.
- Budget Meal Hero: Dried pinto beans and vegetable broth? We’re talking $3 for a pot that feeds four. Add onions and garlic (both pantry staples), and you’ve got a filling, nourishing meal that won’t break the bank. Perfect for when groceries are tight.
Step-by-step instructions for smoky pinto bean soup
Transform simple ingredients into a rich, spice-infused soup with perfect texture and depth.
Soak and Prepare the Pinto Beans
Rinse the 1.5 cups dried pinto beans thoroughly under cold water to remove any debris. Place them in a large bowl and cover with plenty of water—at least 3 cups—then let them soak overnight in the refrigerator. This overnight soak ensures even cooking and prevents the beans from remaining hard or splitting during cooking.
I always use the overnight method because it dramatically reduces cooking time and improves texture. If you forget to soak overnight, you can use the quick-soak method: cover the beans with boiling water, remove from heat, cover, and let sit for 2 hours before draining. Drain the soaked beans and set aside—you'll notice they'll have expanded significantly and feel soft to the touch.
Sauté Aromatics and Spices
Heat the 2 tablespoons olive oil in a large pot over medium heat. Add the diced yellow onion and cook for 5 minutes, stirring occasionally, until it becomes translucent and just beginning to soften. This step develops the onion's natural sweetness and forms the flavor base for your soup.
Add the 4 minced garlic cloves, 1 tablespoon chipotle powder, 1 tablespoon ground cumin, and 1 teaspoon dried oregano. Stir constantly for 1 minute until the garlic becomes fragrant and the spices are fully incorporated. You'll notice the mixture darkens slightly and fills your kitchen with an aromatic smoky warmth. Be careful not to let the spices burn—this can create a bitter taste that overpowers the soup.
Simmer Beans in Broth
Add the drained pinto beans and 4 cups vegetable broth to the pot. Bring everything to a boil over high heat, then immediately reduce to a gentle simmer. Cover the pot and let it cook for 45-60 minutes, stirring occasionally to prevent the beans from sticking to the bottom. The beans are done when they're tender but still hold their shape—you should be able to mash one between your fingers with light pressure.
I check for doneness by tasting a bean and ensuring it's soft but not mushy. If the soup looks too thick, add ½ cup water and continue simmering. The beans should absorb the liquid gradually, creating a hearty, flavorful base. This is where the magic happens—the flavors meld together into a rich, complex broth.
Finish with Coconut Milk and Seasoning
Once the beans are tender, stir in the ½ cup coconut milk and bring the soup back to a gentle simmer. This adds a luxurious creaminess that balances the earthy bean flavors. Simmer uncovered for 5-7 minutes to allow the coconut milk to blend smoothly into the soup. Season with 1 teaspoon salt and ½ teaspoon black pepper, adjusting to taste.
Here's the thing—coconut milk can sometimes separate if added too quickly, so stir continuously for the first minute after adding it. The soup should have a velvety texture with a subtle sweetness that complements the smoky spices. Taste and adjust the seasoning again, remembering that the beans will absorb some of the salt as they continue to cook.
Serve with Fresh Garnishes
Ladle the soup into bowls and garnish each serving with chopped fresh cilantro and a squeeze of lime juice from the whole lime. The bright acidity of the lime cuts through the richness of the coconut milk and beans, while the cilantro adds a fresh, herby note. Serve immediately with slices of whole avocado on the side or mixed in for added creaminess.
For the best experience, serve this soup while it's hot, as the flavors continue to develop and meld together. The avocado adds a beautiful contrast in both texture and color, making each spoonful visually appealing. This soup keeps well in the refrigerator for up to 3 days, so it's perfect for meal prep—just reheat gently on the stove and adjust seasoning as needed.
Pro Tips For Making Bean Soup Recipe With Pinto Beans
- SOAK BEANS OVERNIGHT: I learned this the hard way—skipping the soak means your beans will stay stubbornly tough no matter how long you simmer. Dried pinto beans need at least 8 hours in water (or a quick 2-hour soak with boiling water) to soften properly. Trust me, the extra effort makes the difference between mushy and melt-in-your-mouth.
- SAUTÉ ONIONS LOW AND SLOW: High heat turns onions into bitter sludge, and that’s the last thing you want in your soup. Cook them over medium-low for 8-10 minutes until deeply golden—not crispy, just soft and caramelized. This builds flavor without burning, and it’s the foundation of your soup’s depth.
- STIR IN CHIPOTLE GRADUALLY: Dumping all the chipotle powder at once will hit you with a wall of heat. Start with half, taste, then add the rest a pinch at a time while simmering. You can always adjust, but you can’t un-smoke a soup once it’s overpowering.
- USE A PRESSURE COOKER? HALVE TIME: If you’re short on hours, a pressure cooker cuts the cooking time from 1.5 hours to 30 minutes. Just don’t skip the soak—even with high pressure, dry beans won’t soften properly. (Yes, I’ve tried. No, it’s not worth it.)
Essential equipment for perfect results
Large Pot Essentials
You'll need a 6-8 quart pot with a tight-fitting lid for even simmering—my All-Clad Stainless Steel Dutch Oven is perfect for this recipe. The deep sides prevent spills, and the heavy base distributes heat evenly.
If you don’t have a Dutch oven, any enamel-coated pot (like Le Creuset) or even a large stainless steel stockpot will work just fine. 🔥
Bean Soaking Tools
For soaking beans overnight, use a large glass or ceramic bowl—it’s easy to clean and won’t retain odors. I like to cover the beans with at least 3 cups of water per 1.5 cups of beans to ensure proper hydration.
A fine-mesh strainer (like the OXO Good Grips) is essential for rinsing beans before cooking to remove debris. Pro tip: Use a measuring cup to track water levels during the quick-soak method.
Spice Grinder Matters
Freshly ground spices make a huge difference in flavor. A small spice grinder (like the Spice & Tea Mini Grain Mill) lets you toast and grind cumin seeds on the spot for maximum aroma.
If you don’t have one, a mortar and pestle works too—just toast the seeds in a dry pan first. For chipotle powder, a small whisk helps distribute it evenly in the pot without clumping.
Liquid Measurements
Precision matters with broth and coconut milk. Use a liquid measuring cup (like the Pyrex 2-cup version) for accurate measurements—4 cups of broth and ½ cup coconut milk should be measured carefully.
A small ladle helps transfer liquids without spills, and a fine-mesh sieve strains out any unwanted bits if you’re using homemade broth. 💧
Garnish Prep Tools
Fresh garnishes elevate the dish, so keep a sharp chef’s knife (like the Victorinox 8-inch) and a cutting board handy for chopping cilantro and slicing avocado.
A microplane is great for zesting lime if you want extra brightness. For serving, a slotted spoon helps place garnishes neatly on top without overcrowding the bowl.
Nutrition facts
Frequently asked questions
Can I use canned pinto beans instead of dried?
Yes, but the texture and flavor won't be the same. Canned beans cook faster but lack the deep, earthy flavor that develops when dried beans simmer slowly. If using canned, drain and rinse them well, then simmer in the broth for 15-20 minutes to absorb flavors. For best results, stick with dried beans—they hold their shape and taste more complex.
How do I make this soup spicier?
Add more chipotle powder (½ to 1 teaspoon extra) or stir in ½ teaspoon cayenne pepper at the end. For heat lovers, mash a few jalapeño seeds into the soup while simmering. Always taste as you go—spices build flavor over time, so start conservative.
Can I make this soup in an Instant Pot?
Sauté the aromatics, then add beans, broth, and spices. Cook on high pressure for 12 minutes, then quick-release. Finish with coconut milk and garnishes. The Instant Pot cuts cooking time to 30 minutes total, but the flavor will be slightly less developed than stovetop.
Why does my soup taste bland?
Most likely, the beans didn't absorb enough flavor. Simmer uncovered for 5-10 extra minutes to reduce the liquid and concentrate flavors. Also check your salt—add ½ teaspoon at a time while tasting. Fresh herbs (cilantro, lime) and a splash of vinegar can also brighten flavors.
What if I don't have coconut milk?
No problem! Use ½ cup Greek yogurt or sour cream for creaminess, or skip it entirely—the broth will still be flavorful. For a dairy-free alternative, blend ½ cup silken tofu with ¼ cup water until smooth. The soup will just be slightly lighter in texture.
