Soups & Stews
This bean and ham soup recipe transforms a simple ham bone into the heart of a deeply flavorful broth that simmers for hours, extracting every ounce of savory richness.
The key lies in that ham bone—its slow dissolution into the pot creates a velvety, umami-packed foundation that elevates even the most basic ingredients. What starts as a humble combination of beans, vegetables, and pork becomes a restaurant-worthy bowl of comfort, where every spoonful carries layers of caramelized depth.
What sets this recipe apart is the balance between simplicity and complexity: you’ll use pantry staples like dried beans and canned tomatoes, but the ham bone’s magic transforms them into something extraordinary.
The long simmer—typically 2 to 3 hours—allows flavors to meld and the broth to develop a glossy, almost gelatinous richness. No fancy techniques are needed, just patience and a pot left to work its magic on the stovetop.
The result is a soup that’s equal parts hearty and elegant—thick enough to coat a spoon but light enough to sip, with tender beans and melt-in-your-mouth ham that practically falls apart.
The aroma alone will fill your kitchen with warmth, while the texture offers a perfect contrast of creamy broth and hearty beans. This is the kind of soup that tastes even better the next day, as flavors deepen and the broth becomes even more luxurious.
Perfect for chilly evenings, holiday gatherings, or meal prep, this recipe scales effortlessly to feed a crowd or stretch into leftovers for days. The ham bone’s versatility means you can use any cut—from a leftover holiday ham to a store-bought bone—making it both economical and impressive.
Let’s get started on a bowl of soup that feels like a hug in every bite.
Ingredients for bean and ham soup recipe with ham bone
Sixteen ingredients. One pot. A ham bone's magic transforms simple pantry staples into restaurant-worthy depth.
| Ingredient | Amount | Notes |
|---|---|---|
| Ham Bone 🍖 | 1 lb | Raw, uncooked, with meat attached |
| Dried Navy Beans 🌾 | 1 ½ cups | Rinsed before soaking |
| Yellow Onion 🧅 | 1 whole | Chopped into half-moons |
| Carrots | 3 medium | Peeled, cut into 1-inch chunks |
| Celery Stalks 🥬 | 3 whole | Trimmed, cut into 1-inch pieces |
| Garlic Cloves 🧄 | 4 cloves | Peeled, smashed slightly |
| Diced Tomatoes 🍅 | 1 can (15 oz) | Fire-roasted preferred |
| Tomato Paste 🍅 | 2 tbsp | Smooth, not chunky |
| Bay Leaves 🌿 | 2 whole | Dried, standard size |
| Thyme Sprigs 🌿 | 2 whole | Fresh, stems removed |
| Black Peppercorns 🌶️ | 1 tsp | Whole, freshly cracked |
| Salt 🧂 | 1 ½ tsp | Kosher or sea salt |
| Olive Oil 🫒 | 2 tbsp | Extra-virgin preferred |
| Fresh Parsley 🌿 | ¼ cup | Chopped, for garnish |
The ham bone is non-negotiable here—it's the soul of this soup. Ask your butcher for a fresh bone with meat still attached, or save a leftover holiday ham bone. Look for good marbling in the meat; that's where the flavor hides. Costco or Trader Joe's often have pre-packaged ham bones if you're not near a butcher. The beans should be dried, not canned—navy or great northern work best. Soak them overnight for maximum tenderness, but if you're in a hurry, the quick-soak method (boiling water + salt for 2 minutes) works too. For the tomatoes, fire-roasted cans add a smoky depth that canned tomatoes can't match.
No ham bone? Substitute with 1 cup of ham broth plus 1/2 cup of diced leftover ham—it won't be as rich, but still delicious. Fresh thyme is ideal, but dried works at half the amount. The carrots can be baby carrots if that's what you've got, but whole carrots give you better control over size. For the tomato paste, those little squeeze tubes at Trader Joe's are perfect—they're convenient and keep forever. If you're short on time, 1 cup of chicken broth can replace the tomato paste, though you'll lose some of that caramelized depth. The parsley is just for garnish, so don't stress if you don't have any—fresh basil works too.
This soup tastes even better the next day once the flavors meld. Store in an airtight container in the fridge for up to 5 days, or freeze for 3 months. The broth will thicken as it cools, so add a splash of water when reheating. I always make a double batch—it reheats beautifully and makes perfect lunches for days. For meal prep, portion into containers and freeze with a layer of broth on top to preserve freshness. The ham bone? Save any leftover meat for sandwiches or salads—it's too good to waste.
Why You'll Love This Recipe
- I’ll be real: this recipe stretches my grocery budget without breaking the bank. A single ham bone feeds my family for days, and dried beans cost a fraction of canned. Plus, leftovers taste even better the next day—if they last that long, because my kids always clear their bowls first.
- One-Pot Magic: Honestly, I dump everything in the same pot and walk away. The ham bone simmers all day while I handle the rest of my errands—no extra pans, no fuss, just pure convenience. The beans soften effortlessly, and the veggies melt into the broth without a single extra dish to scrub.
- Deep, Savory Richness: Here’s what sold me—the ham bone doesn’t just flavor the soup, it transforms it. That slow-simmered collagen turns the broth into liquid gold, and the navy beans soak up every last bit of salty, smoky goodness. Between us, I’ve tried canned broth, but nothing beats the real deal.
- Weeknight to Potluck: This soup is my go-to when I’m swamped but still want to impress. Serve it in mugs for a cozy weeknight dinner, or bring a big pot to a holiday gathering—everyone will ask for seconds. The carrots and celery add just enough sweetness to balance the ham’s saltiness, making it universally loved.
Step-by-step instructions for bean and ham soup with rich bone broth
This method transforms humble ingredients into a deeply flavorful soup with layers of savory depth.
Sear the Ham Bone for Maximum Flavor
Heat a large Dutch oven over medium-high heat and add the 2 tablespoons olive oil. Place the 1 pound ham bone in the pot, fat-side down, and sear for 8-10 minutes until deeply golden brown. Flip and sear the other side for another 5-7 minutes—this step develops a rich, caramelized crust that infuses the broth with deep flavor.
Don't rush this process. You'll know it's ready when the bone releases easily from the pot and the surrounding oil shimmers. The golden color indicates proper browning, which is essential for that authentic bone broth depth. Remove the bone and set it aside temporarily—it will return to the pot later.
Sauté Vegetables and Build the Base
In the same Dutch oven, add the chopped yellow onion, carrots, and celery stalks. Cook over medium heat for 8-10 minutes until the vegetables soften and the onion becomes translucent. Stir occasionally to prevent burning, which would make the soup bitter.
Add the 4 smashed garlic cloves and cook for another 30 seconds until fragrant. This aromatic base forms the flavor foundation of your soup. The vegetables should be tender but not mushy—you want them to break down further during the long simmer ahead.
Combine All Ingredients for the Long Simmer
Return the seared ham bone to the pot. Add the 1.5 cups dried navy beans, 1 can diced tomatoes, 2 tablespoons tomato paste, 2 bay leaves, 2 thyme sprigs, 1 teaspoon black peppercorns, and 1.5 teaspoons salt. Pour in enough water to cover all ingredients by about 2 inches—approximately 8-10 cups total.
Bring to a boil, then reduce heat to low and partially cover the pot. Let it simmer for 2-2.5 hours until the beans are tender and the broth has reduced slightly. The beans should be easily mashed between your fingers when done. Skim off any foam that rises to the surface during the first 30 minutes of simmering to keep the broth clear.
Finish and Adjust the Seasoning
Remove the ham bone and let it cool slightly. Using a slotted spoon, transfer the beans to a bowl and mash about half of them with a fork to thicken the soup slightly. Return the mashed beans to the pot and discard the bay leaves and thyme sprigs.
Return the ham bone to the pot and let everything simmer together for another 10 minutes. Taste and adjust seasoning—you may need to add more salt, especially if you used smoked ham. The soup should be rich and flavorful without being overly salty. If it's too thick, add a little hot water to reach your preferred consistency.
Serve Warm with Garnish
Carefully remove the ham bone and let it cool. Once cool enough to handle, use a fork to pull off any remaining meat and return it to the soup. Ladle the soup into bowls and garnish each serving with 1 tablespoon chopped fresh parsley. The parsley adds freshness and brightens the rich flavors.
Serve immediately with crusty bread to soak up the delicious broth. The ham bone will have rendered its flavor into the soup, creating a deeply satisfying dish with perfect balance between the hearty beans, tender vegetables, and rich meaty depth.
Pro Tips For Making Bean And Ham Soup Recipe With Ham Bone
- CRISP THE BONE FIRST: The ham bone’s marrow is where the flavor hides, but it won’t release if you just toss it raw. Sear the bone in a dry pot over medium-high heat for 5–7 minutes until the edges blacken—this cracks the bone and gets the fat rendering. (Yes, it’ll smell like a smokehouse, but that’s the good kind of smoke.)
- SOAK BEANS IN COLD WATER: I used to soak beans overnight in warm water, thinking it’d speed things up. Wrong. Cold water preserves more of the beans’ natural starch, which means creamier soup later. Use a 1:3 bean-to-water ratio and let them sit for at least 8 hours—or overnight if you’re not in a rush. No soaking? At least rinse them thoroughly before cooking to cut down on foam.
- SKIP THE CROWDED POT: Packing the pot too tight with beans, veggies, and bone? That’s how you end up with mushy carrots and a soup that tastes like it’s been pureed. Start with the bone and onions in a pot that leaves at least 2 inches of headspace, then add beans and veggies in layers. If it looks crowded, add a splash of water—you’ll thank yourself when the carrots stay intact.
- SAVE TIME WITH PARBOILED VEGGIES: Celery and carrots don’t need to simmer for hours to soften. Give them a 5-minute head start in boiling water, then shock them in ice water before adding to the soup. They’ll hold their shape better, and the soup will hit the table faster. (Pro move: Cut them into even chunks—no one wants a soup with "crunchy surprise" carrots.)
Troubleshooting this dish
Broth Too Thin?
If your soup ends up watery after simmering, it’s likely because the beans absorbed too much liquid. To fix this, mash about half of the cooked beans with a fork and stir them back into the pot—their starch will naturally thicken the broth.
For extra richness, remove the ham bone after searing and simmer it separately in 2 cups of water for 1 hour before adding it back to the soup. This creates a concentrated flavor base. 💫
Beans Still Hard?
Undercooked beans are usually the result of insufficient soaking or simmering time. First, ensure you soaked your navy beans overnight (or used the quick-soak method). If they’re still tough after 2.5 hours of simmering, add ½ cup extra water and cook for another 30 minutes.
For future batches, try great northern beans—they tend to soften faster than navy beans.
Ham Bone Not Rendering?
A ham bone that doesn’t release flavor often means it wasn’t seared properly or simmered long enough. After searing, place the bone in a cold pot and cover with water—this helps extract collagen.
If using a leftover bone, blanch it in boiling water for 5 minutes before searing to remove any surface bacteria. For maximum flavor, simmer the bone for at least 2 hours—the longer it cooks, the more gelatin it releases into the broth.
Overly Salty Soup?
Too much salt is common when using smoked ham or canned tomatoes. To balance the flavor, add 1 cup of hot water and a pinch of baking soda (just ¼ teaspoon)—it neutralizes excess salt without altering the taste.
Alternatively, stir in ½ cup of unsalted tomato paste or a splash of apple cider vinegar to dilute the saltiness while adding depth. Taste as you go!
Burnt Onions or Vegetables?
Burnt flavors ruin the delicate balance of this soup. Always cook your onions, carrots, and celery over medium heat—never high. Stir frequently and remove any browned bits immediately. If you notice a bitter taste, add 1 teaspoon of sugar or a pinch of cornstarch slurry to neutralize the burn.
For next time, keep the heat lower and add a splash of water if the pot gets too dry.
Leftover Ham Bone?
Don’t toss that ham bone! Save the remaining meat for ham and cheese sandwiches, quiches, or even fried rice.
For extra flavor, simmer the bone again in 4 cups of water with 1 bay leaf and 1 sprig of thyme for 1 hour to make a quick ham broth.
Store the bone in a ziplock bag in the freezer for up to 3 months** for future soups or stews. 🔥
Nutrition facts
Frequently asked questions
Can I use canned beans instead of dried?
Yes, but your soup will be less flavorful. Canned beans save time, but dried beans absorb more liquid and create a thicker, heartier texture. If using canned, drain and rinse them well, then add ½ cup extra broth to compensate for the missing starch. For best results, stick with dried—it's worth the extra 12-hour soak or overnight prep.
What's the best way to store leftovers?
Transfer soup to an airtight container and refrigerate for up to 5 days. For longer storage, freeze portions in ziplock bags with 1-inch headspace to prevent freezer burn. Thaw overnight in the fridge and reheat on low heat, stirring occasionally. The broth will thicken when chilled—add a splash of water when reheating if needed.
How do I make this soup vegetarian?
Replace the ham bone with 2 cups vegetable broth plus 1 smoked paprika packet (or 1 tbsp) for depth. Add ½ cup mushrooms and 1 tsp liquid smoke to mimic the ham's smoky flavor. For protein, use 1 cup cooked lentils instead of beans. The tomato paste and bay leaves will still create that rich base you love.
Can I use a slow cooker for this recipe? Sear the ham bone first, then transfer everything to your slow cooker. Cook on low for 6-7 hours or high for 3-4 hours. The slow cooker's gentle heat enhances the bean and ham flavors beautifully. Just
What's the secret to getting maximum flavor from the ham bone?
The key is proper searing and long simmering. Brown the bone deeply on all sides to create a flavorful crust, then simmer uncovered for the first 30 minutes to remove impurities. After that, cover and cook low and slow—2+ hours is ideal. The longer it cooks, the more collagen breaks down into rich, gelatinous broth. Don't skip the sear—it's what transforms a simple bone into a flavor powerhouse!
