Soups & Stews
This 9 bean soup with ham recipe transforms humble pantry staples into a soul-warming winter classic that tastes like holiday tradition in every spoonful. The secret lies in slow-simmered ham bones and dried beans, which develop deep, savory complexity as they meld together over hours.
I've perfected this version to deliver that restaurant-quality richness without requiring fancy ingredients—just time and patience, which pays off in the most satisfying way possible.
What sets this recipe apart is the layered flavor approach: the ham provides salty depth, while the combination of nine different beans creates a satisfying texture contrast—creamy navy beans, hearty kidney beans, and tender butter beans all working together.
The broth reduces to a velvety consistency that coats every bean perfectly, creating that signature hearty stew experience. Most importantly, it's a one-pot wonder that feeds a crowd while requiring minimal cleanup.
By the time you're ladling this into bowls, you'll have a soup that's rich enough to stand alone but still room for crusty bread on the side. The aroma alone—smoky ham, caramelizing onions, and herbs simmering together—will have everyone gathering around the table.
This is comfort food at its finest, the kind that tastes even better the next day when flavors have fully melded.
The beauty of this recipe is its versatility—serve it as a main dish for chilly evenings or as a starter that leaves guests asking for seconds.
The ham can be adjusted from fully cooked to slightly charred for extra depth, and you can even prep the beans ahead of time to cut down on active cooking. Here's how to make it perfectly every time.
Ingredients for 9 bean soup recipe ham
Nine dried beans, smoky ham, and simple vegetables create this restaurant-quality winter stew.
| Ingredient | Amount | Notes |
|---|---|---|
| Dried Navy Beans 🌾 | 1 ½ cups | Uncooked, rinsed well |
| Dried Kidney Beans 🌾 | 1 cup | Uncooked, soaked overnight |
| Dried Butter Beans 🌾 | 1 cup | Uncooked, rinsed well |
| Dried Black Beans 🌾 | ½ cup | Uncooked, rinsed well |
| Dried Pinto Beans 🌾 | ½ cup | Uncooked, rinsed well |
| Dried Great Northern Beans 🌾 | ½ cup | Uncooked, rinsed well |
| Dried Chickpeas 🌾 | ½ cup | Uncooked, rinsed well |
| Dried Lentils 🌾 | ½ cup | Uncooked, rinsed well |
| Dried White Beans 🌾 | ½ cup | Uncooked, rinsed well |
| Ham Bones 🥓 | 2 lb | With meat, smoked preferred |
| Yellow Onions 🧅 | 2 whole | Chopped, medium size |
| Carrots 🥕 | 4 whole | Medium size, chopped |
| Celery Stalks 🌿 | 4 whole | Chopped, medium size |
| Garlic Cloves 🧄 | 6 cloves | Minced, fresh preferred |
| Bay Leaves 🌿 | 2 whole | Dried, standard size |
| Fresh Thyme 🌿 | ½ tsp | Dried works at one-third |
| Salt 🧂 | 2 tsp | Kosher or sea salt |
| Black Peppercorns 🌶️ | 1 tsp | Freshly ground preferred |
| Water 💧 | 12 cups | Filtered preferred |
The ham bones are non-negotiable for that deep, savory flavor. Look for smoked ham bones at your butcher counter—they add a subtle smokiness that canned ham can't match. If you can't find them, ham hocks work too, but they're saltier so reduce the added salt. For the beans, dried is essential—canned beans won't develop that same satisfying texture. I always buy mine in bulk from Costco or WinCo because the price per pound is unbeatable. Soak overnight if short on time, but the longer they soak, the creamier they'll get.
No smoked ham bones? Substitute with ham steak or extra ham hocks—just remember to remove the meat and crush the bones first. Swapping any bean? Keep the total to 6 cups dried for proper texture. Fresh thyme is ideal, but dried works at one-third the amount. The carrots and celery can be swapped for other root vegetables if needed—parsnips or turnips add nice depth. For a quicker version, use pre-soaked beans or even canned beans (though texture will differ). The garlic can be roasted for a sweeter flavor—just toss whole cloves with olive oil at 400°F for 15 minutes before mincing.
This soup tastes even better the next day as flavors meld. Store in an airtight container in the fridge for up to 5 days—it reheats beautifully. For freezing, portion into 2-cup servings and freeze for up to 3 months. The beans will soften further when reheated, so don't overcook initially. I always make double batches—perfect for meal prep. The broth reduces significantly, so start with plenty of water. If it gets too thick after simmering, just add a little more water or broth to reach your desired consistency.
Why You'll Love This Recipe
- Throw-In-And-Forgot It: I swear, the only "prep" is rinsing those dried beans—no chopping, no fuss. Just toss them in a pot with the ham, water, and a few spices, then let them simmer while you tackle the rest of your day. (Yes, even on a Tuesday night.)
- Ham-Glazed Magic: That salty, smoky ham broth? It turns the beans into little flavor bombs—creamy navy beans, smoky kidney beans, and buttery pinto beans all swimming in rich, savory goodness. Honestly, the first time I tasted it, I nearly spilled my coffee.
- Leftovers That Lie: Between us, this soup only gets better the next day. The flavors meld into this deep, hearty goodness that makes you want to eat it straight from the pot. I’ve had it for lunch, dinner, and even packed it for work—no one ever guessed it was yesterday’s leftovers.
- Pantry Staple Power: Five types of dried beans? I’ve got them. Ham bone? Check. A few spices? Done. It’s the ultimate budget-friendly meal that feeds a crowd without breaking the bank. Plus, the beans last forever, so you’re not scrambling for ingredients last-minute.
Step-by-step instructions for hearty winter stew
Transform simple ingredients into a rich, flavorful soup that captures the essence of comfort food.
Prepare the Ham Bones and Vegetables
Begin by placing the 2 lb ham bones in a large Dutch oven and covering them with 12 cups water. Bring to a boil over high heat, then reduce to a simmer and cook for 30 minutes. This step extracts maximum flavor from the bones, creating a rich broth foundation.
While the bones simmer, chop the 2 whole yellow onions, 4 whole carrots, and 4 whole celery stalks into ½-inch dice. Mince the 6 cloves garlic. Keep these ingredients separate until needed. The onions, carrots, and celery form the aromatic base known as "mirepoix," while the garlic adds depth of flavor.
Add Beans and Simmer
After the ham bones have simmered for 30 minutes, add the 1.5 cups dried navy beans, 1 cup dried kidney beans, 1 cup dried butter beans, 0.5 cup dried black beans, 0.5 cup dried pinto beans, 0.5 cup dried great northern beans, 0.5 cup dried chickpeas, 0.5 cup dried lentils, and 0.5 cup dried white beans. Stir gently to combine, ensuring all beans are submerged in the broth.
Return the soup to a simmer and cook uncovered for 1 hour. This initial simmer softens the beans slightly and begins breaking down their skins. Check occasionally to ensure the liquid doesn't reduce too much—add ½ cup water if needed. The beans should be plump but still firm at this stage.
Build the Flavor Base
Add the chopped onions, carrots, celery, and minced garlic to the pot. Stir well to distribute the vegetables evenly throughout the broth. Add the 2 whole bay leaves and 0.5 tsp fresh thyme (or 1½ tsp dried thyme if substituting). These aromatic ingredients infuse the soup with complex, savory notes.
Simmer the soup uncovered for 1 hour, stirring occasionally. The vegetables should soften but retain their shape. You'll notice the broth deepening in color and flavor as the ingredients meld together. This is when the soup truly begins to develop its rich, hearty character.
Season and Finish Cooking
Add the 2 tsp salt and 1 tsp freshly ground black peppercorns to the pot. Stir well to distribute the seasoning evenly. Taste the broth and adjust the seasoning if needed—this is your opportunity to balance the flavors before the final cooking stage.
Continue simmering the soup uncovered for an additional 1 to 1½ hours, or until all the beans are tender. The beans are done when they're fork-tender and easily mashable between your fingers. The lentils should hold their shape but still be soft. Skim off any foam that rises to the surface during this time to keep the broth clear.
Rest and Serve
Once the beans are tender, remove the bay leaves and discard them. Let the soup rest for 10 minutes before serving. This resting period allows the flavors to fully meld and the soup to reach its optimal consistency.
Ladle the soup into bowls and serve immediately. Each spoonful should deliver a harmonious blend of tender beans, rich ham broth, and aromatic vegetables. The texture should be hearty yet comforting, with each bean variety contributing its unique character to the stew.
Pro Tips For Making 9 Bean Soup Recipe Ham
- SOAK BEANS SEPARATELY: Navy beans and butter beans need 8+ hours; kidney and black beans only need 2. I learned this the hard way—mixing them all overnight leads to mushy butter beans while the others stay firm. Use two bowls, label them, and save yourself a strainer full of regret.
- BROWN THE HAM FIRST: Skip the slow cooker shortcut—sear the ham bones or ham hock in a dry pot for 10 minutes until deep brown. That crust adds layers of flavor the slow simmer can’t match. Yes, it takes 10 extra minutes, but the soup will taste like it simmered all day.
- STIR THE POT DAILY: If simmering overnight, give the beans a quick stir every 8 hours. I used to ignore this, and the butter beans would clump into a sad, gluey mess. A wooden spoon every time keeps them loose and lets the broth circulate properly—no extra effort, just better texture.
- ADD SALT IN STAGES: Taste the broth after 2 hours, then again at 4. Beans absorb salt over time, so dumping it all at once makes the soup taste flat by the end. Start with half the recipe’s salt, then adjust—this is the thing that matters most for balancing that hamy richness.
Make-ahead tips for leftovers
Overnight Prep
Start your beans soaking the night before—this is the single best time-saver. Place all dried beans in a large bowl, cover with plenty of water (about 3 inches above the beans), and let them soak for 8-12 hours at room temperature.
I use a glass bowl so I can see the water level, and I change it once if needed. This method ensures even cooking and reduces active time later. 💫
Bean Shortcut
If you're short on time, use pre-soaked beans from the store—just drain and rinse them well before adding to the pot.
For the 1.5 cups navy beans and 1 cup kidney beans, I've found that Great Northern beans from the bulk section at Trader Joe's are pre-soaked and ready to use. They cut 2 hours off your prep time without sacrificing flavor.
Ham Prep Ahead
Clean up your ham bones ahead of time by removing any excess fat and crushing the bones with a hammer or rolling pin. Store them in a ziplock bag in the fridge for up to 3 days before use.
This step prevents a messy cleanup later and ensures maximum flavor extraction. I always do this the night before—it takes just 5 minutes and makes the cooking process smoother.
Freezer-Friendly
Make a double batch and freeze half for later. Portion the cooled soup into quart-sized freezer bags, leaving 1 inch of headspace for expansion. Label with the date—it keeps for 3 months without losing quality.
When ready to eat, thaw overnight in the fridge, then reheat on the stovetop with ½ cup water to restore consistency. The flavors actually deepen after freezing!
Broth Boost
Save time by making a concentrated ham broth base ahead of time. Simmer the 2 lb ham bones in 6 cups water for 2 hours, then strain and store the broth in the fridge for up to 5 days.
Use this as your starting liquid—just add 6 more cups water when cooking. This method cuts 30 minutes off your active cooking time while keeping the rich, smoky flavor intact.
Vegetable Prep
Chop all your vegetables the night before and store them in airtight containers in the fridge. I keep the onions, carrots, and celery separate until ready to use. The garlic can be minced ahead of time and stored in a small jar.
This way, your cooking day starts with just assembling ingredients—no chopping under pressure. Trust me, your future self will thank you! ⏰
Nutrition facts
Frequently asked questions
Can I use canned beans instead of dried for this recipe?
You can substitute canned beans, but the texture will be different. Use 2 (15 oz) cans per 1 cup dried (so 18 cans total for this recipe) and drain well. The beans won't have the same satisfying creaminess as dried, but it works in a pinch. For best results, combine canned beans with ½ cup dried beans to balance texture.
How do I make this soup vegetarian?
Replace the ham bones with 2 cups vegetable broth and add 1 tbsp soy sauce or 1 tsp smoked paprika for depth. Use 1 extra cup dried beans to compensate for lost richness. For a meaty texture, add ½ cup crumbled tempeh or 1 cup cooked mushrooms at the end. The flavor won't be identical, but it'll still be hearty!
Why does my soup taste too salty?
Ham bones and smoked paprika add significant salt, so taste the broth after 1 hour of simmering. If needed, reduce salt by adding 1 cup water or ½ cup unsalted broth to dilute. For future batches, use 1 tsp salt instead of 2 tsp and add more pepper to compensate. The beans will absorb some salt, so don't overcorrect immediately.
Can I add other meats besides ham?
Try smoked sausage (like kielbasa) or pork shoulder for extra richness. For chicken, use 2 cups shredded rotisserie chicken and 2 chicken thighs instead of ham bones. For a seafood twist, add ½ lb smoked salmon at the end. Just adjust cooking times—bone-in meats need longer to tenderize.
How do I fix mushy beans?
Mushy beans happen from overcooking or old dried beans. If they're still firm at 3 hours, they're done. For future batches, use younger beans (check package dates) and don't exceed 4 hours total simmering time. If beans are already mushy, strain them and add ½ cup fresh beans to thicken the broth. The soup will still taste great!
