Soups & Stews
This best ham and bean soup recipe ever from scratch delivers the kind of soul-warming, from-scratch flavor that turns weeknight dinners into comfort food memories.
The secret lies in slow-simmered beans, deeply caramelized ham, and a rich broth that builds layers of savory depth—no shortcuts, just traditional techniques that create restaurant-quality results in your own kitchen. Every spoonful carries the essence of old-world cooking, where time and patience transform simple ingredients into something extraordinary.
What sets this recipe apart is the attention to detail: soaking beans overnight for maximum tenderness, searing ham to develop deep flavor, and simmering everything together until the broth becomes velvety and the beans melt in your mouth.
The process may take time, but the reward is a soup so rich and satisfying that it becomes an instant family favorite. This isn't just another ham and bean soup—it's the kind that gets passed down through generations, one steaming bowl at a time.
By the time you're done, you'll have a pot of soup that's thick with hearty beans, tender chunks of ham, and a broth so flavorful it practically tastes like it's been simmering for hours.
The aroma alone will have everyone gathering around the table, and the first bite delivers on that promise of pure, comforting satisfaction. This is the soup that makes you slow down, savor every moment, and forget about the rest of the world.
Perfect for chilly afternoons, holiday gatherings, or anytime you crave a meal that feels like a hug in a bowl. The beauty of this recipe is its versatility—serve it with crusty bread to soak up every last drop, or let it stand alone as the star of your dinner.
Here's how to make it the way it should be made: from scratch, with love, and without compromise.
Ingredients for best ham and bean soup recipe ever from scratch
Six hearty ingredients transform into the most soul-satisfying ham and bean soup you'll ever make.
| Ingredient | Amount | Notes |
|---|---|---|
| Dried Navy Beans 🌱 | 2 cups | Soaked overnight, drained |
| Bone-In Ham Hock 🐷 | 1 lb | Smoked or unsmoked preferred |
| Yellow Onion 🧅 | 1 whole | Chopped into half-moons |
| Carrots 🥕 | 4 whole | Peeled, cut into chunks |
| Celery Stalks 🥬 | 3 whole | Chopped into bite-size pieces |
| Garlic Cloves 🧄 | 4 cloves | Minced for deep flavor |
| Bay Leaves 🌿 | 2 whole | Dried for aromatic depth |
| Black Peppercorns 🌶️ | 1 tsp | Freshly cracked for heat |
| Salt 🧂 | 2 tsp | Kosher or sea salt preferred |
| Tomato Paste 🍅 | 2 tbsp | Canned, for richness |
| Apple Cider Vinegar 🍏 | 1 tbsp | For brightness and depth |
| Dried Thyme 🌿 | 1 tsp | Or fresh thyme at 3x amount |
| Crusty Bread 🍞 | 1 whole | Optional for serving |
| Olive Oil 🫒 | ½ cup | For searing ham and veggies |
| Chicken or Vegetable Broth 💧 | 6 cups | Homemade or quality store-bought |
The ham hock is non-negotiable here—it's the secret to that deep, savory broth that makes this soup extraordinary. Smithfield or Hormel are solid brands, but ask your butcher for the best quality if you're feeling fancy. Look for good marbling and avoid anything that smells off. For the beans, navy beans are traditional, but you could swap in cannellini or great northern if that's what you've got. Soak them overnight in cold water—this step is crucial for the perfect texture. The carrots and celery? Fresh is best, but frozen works in a pinch if you're in a hurry. Just make sure to chop them evenly so they cook at the same rate.
No ham hock? Substitute with smoked turkey leg or even extra ham bones—just adjust the cooking time. Running low on thyme? Dried oregano at half the amount works too, though it won't be quite the same. The tomato paste can be swapped for a handful of sun-dried tomatoes if you prefer. For the broth, homemade is ideal, but Swanson or Pacific Foods are solid store-bought options. The apple cider vinegar might sound odd, but trust me—it cuts through the richness and adds a subtle tang that makes the whole soup sing. If you're feeling adventurous, try a splash of red wine instead.
This soup tastes even better the next day, so make a double batch if you can. Store it in the fridge for up to 5 days, or freeze portions for 3 months. The ham will get even more tender as it sits, and the flavors meld together into something truly magical. I always make extra because it disappears faster than you can say 'comfort food.' Serve it with that crusty bread to soak up every last drop—it's practically a requirement. Leftovers reheat beautifully, so you'll be making this again and again.
Why You'll Love This Recipe
- No-Soak Required: I swear by this trick—just toss those dried navy beans in cold water before boiling, and they soften right alongside the ham. No overnight soaking, no fuss. The ham hock melts into the broth like a dream, so you’re basically getting a shortcut to restaurant-quality depth.
- Smoky-Sweet Magic: That bone-in ham hock? It’s the star. The meat falls off effortlessly, and the bone infuses the broth with this unreal depth—savory, slightly sweet, with just a hint of smokiness. Pair it with the caramelized onions and celery, and you’ve got a flavor bomb that’ll have everyone asking for seconds.
- Weeknight to Potluck: This soup is my go-to for lazy nights and holiday gatherings. Double the batch on Sunday—it reheats like a champ—and suddenly you’ve got lunch for the next three days. Bring it to a dinner party, and you’ll be the hero who brought the dish that disappears first.
- Budget Meal, Big Payoff: Dried beans and a ham hock stretch this recipe into a full week’s worth of meals. I’ll be real: it’s not the prettiest, but the taste makes up for it. Plus, the leftovers? Even better the next day—like a flavor upgrade you didn’t plan.
Step-by-step instructions for ham and bean soup from scratch
This is the method that delivers restaurant-quality depth—rich, smoky, and perfectly balanced every time.
Sear the Ham Hock for Maximum Flavor
Heat the 0.5 cup olive oil in a large Dutch oven over medium-high heat until shimmering. Pat the 1 lb bone-in ham hock completely dry with paper towels—this ensures a proper sear. Place the ham hock in the pot, skin-side down, and let it sear undisturbed for 8-10 minutes until deeply golden brown.
The key here is patience. You want that fat to render and the skin to crisp. Flip the ham hock once and sear the other side for another 5-6 minutes until both sides are richly browned. Remove the ham hock and set it aside on a plate—you'll add it back later. This step builds the foundation of flavor that makes this soup truly exceptional.
Sauté the Vegetables for Aromatic Depth
In the same Dutch oven, add the chopped 1 whole yellow onion, 4 whole carrots (cut into chunks), and 3 whole celery stalks (chopped). Cook over medium heat for 8-10 minutes, stirring occasionally, until the vegetables soften and the onion becomes translucent. Add the 4 cloves minced garlic cloves and cook for another 30 seconds until fragrant.
Here's where the magic happens—don't rush this step. The vegetables should release their natural sugars and caramelize slightly, creating a sweet, complex base for the soup. If the vegetables start to stick, add a splash of water and scrape up the browned bits from the bottom of the pot. These bits are packed with flavor and will deepen the richness of your soup.
Build the Soup Base with Tomato Paste and Vinegar
Stir in the 2 tbsp tomato paste and cook for 1-2 minutes until it darkens slightly and loses its raw taste. Add the 1 tbsp apple cider vinegar, 1 tsp dried thyme, 2 whole bay leaves, and 1 tsp cracked black peppercorns. Pour in the 6 cups chicken or vegetable broth and bring the mixture to a gentle boil.
This is the moment that matters: the acidity from the vinegar brightens the flavors, while the tomato paste adds depth and richness. The thyme and bay leaves infuse the broth with aromatic complexity. Let the mixture simmer for 5 minutes to allow the spices to bloom and meld together. This step ensures your soup has layers of flavor that make it stand out.
Simmer the Beans and Ham Hock
Add the drained 2 cups dried navy beans to the pot. Return the ham hock to the Dutch oven and bring everything to a gentle simmer. Partially cover the pot and let it cook for 1 hour to 1 hour 15 minutes, stirring occasionally, until the beans are tender but not mushy. The ham hock should be falling off the bone and the soup should have thickened slightly.
Real talk: the beans are done when they're tender but still hold their shape—a fork should slide in easily, but they shouldn't fall apart. If the soup starts to evaporate too quickly, add a little more broth or water to maintain the liquid level. The ham hock should be so tender that you can easily pull it apart with a spoon, releasing its rich, smoky essence into the soup.
Season and Serve with Crusty Bread
Remove the ham hock from the pot and let it cool slightly before shredding the meat with two forks. Discard the bay leaves and black peppercorns, then stir the shredded ham back into the soup. Taste and adjust the seasoning with 2 tsp salt—this soup should be rich but not overly salty. The acidity from the vinegar and the depth from the tomato paste should balance perfectly.
Ladle the soup into bowls and serve immediately with slices of the 1 whole crusty bread on the side. The contrast of the warm, hearty soup with the crispy bread is what makes this dish truly unforgettable. Each spoonful delivers layers of smoky ham, tender beans, and aromatic vegetables—this is the kind of soup that feels like a hug in a bowl.
Pro Tips For Making Best Ham And Bean Soup Recipe Ever From Scratch
- Blanch the Ham Hock First: Toss that raw ham hock into boiling water for 5 minutes before adding it to the pot—this blasts off the blood and impurities that’ll otherwise make your broth cloudy. (Yes, it’s an extra step, but your soup will taste cleaner and brighter.)
- Soak Beans Overnight—Then Roast: Skip the quick-soak hack and let those navy beans sit in water for 12+ hours. After draining, spread them on a baking sheet and roast at 400°F for 20 minutes before simmering—this deepens their flavor and prevents that mealy texture. (I know, you’re impatient, but trust me.)
- Don’t Crowd the Pot: When simmering, keep the liquid at least 2 inches above the ingredients. Too little water? The ham hock will stew instead of braise, and the beans will turn mushy. Add broth or water as needed—this isn’t a set-it-and-forget-it dish.
- Char the Onion-Carrot-Celery Base: After sweating the veggies, crank the heat to medium-high and let them brown for 8–10 minutes. That caramelized crust is where the soul of the soup lives—skip it, and you’re missing the depth. (Your grandmother wasn’t wrong about this.)
Troubleshooting this recipe
Beans Too Hard?
If your beans aren't tender after simmering for 1.5 hours, they likely need more time or extra liquid. Add 1 cup fresh broth or water and simmer uncovered for another 30-45 minutes.
Avoid high heat—it toughens beans. For quicker results, use a pressure cooker (cook for 25-30 minutes on high pressure). 💫
Broth Too Thin?
Simmering reduces liquid, but if your soup is still watery, let it cook uncovered for 10-15 more minutes to evaporate excess moisture. For instant thickening, mash ½ cup cooked beans with a fork and stir back in.
Alternatively, mix 1 tbsp cornstarch with 2 tbsp cold water, stir into the soup, and simmer for 2-3 minutes until thickened.
Ham Too Salty?
If your ham hock is overly salty, balance it with 1 tbsp apple cider vinegar or ½ cup unsalted broth while simmering. For stronger flavors without extra salt, add 1 tsp smoked paprika or ½ tsp liquid smoke to deepen the smokiness. Taste as you go—adjust gradually to avoid overcorrecting.
Vegetables Overcooked?
Prevent mushy veggies by adding carrots and celery later in the cooking process (after 30 minutes of simmering). For crisp-tender results, blanch them in boiling water for 2 minutes before adding to the soup. Alternatively, stir in fresh chopped parsley or green onions at the end for brightness and texture.
Soup Too Acidic?
If the vinegar or tomato paste makes the soup taste sharp, balance it with 1 tsp sugar or ½ tsp honey. A pinch of ground cinnamon or nutmeg also adds warmth to neutralize acidity.
For richer flavor, stir in 1 tbsp butter or a splash of heavy cream at the end.
Leftover Flavor Fading?
Revive stale soup by adding 1 tbsp fresh lemon juice or 1 tsp Worcestershire sauce to brighten flavors. For depth, sear 2 slices of bacon and crumble them into the reheated soup.
If the texture is off, blend ½ cup of the soup and stir it back in to restore creaminess.
Nutrition facts
Frequently asked questions
Can I substitute canned beans for dried beans in this recipe?
Yes, but with adjustments! Use 2 (15 oz) cans navy beans (drained and rinsed) instead of dried. Since canned beans are pre-cooked, reduce the simmering time to 30-45 minutes instead of 1-1.5 hours. The texture will be slightly softer, but still delicious. For extra flavor, add ½ cup broth to the pot when you add the beans.
What's the best way to store and reheat leftovers?
Store in an airtight container in the fridge for up to 5 days or freeze for 3 months. Reheat gently on the stove over low-medium heat, stirring occasionally, until warmed through. For best results, add 1-2 tbsp broth or water to prevent drying out. Microwave reheating works too—just cover with a damp paper towel to retain moisture.
How can I make this soup vegetarian?
Swap the ham hock for 1 lb smoked tofu or tempeh (pressed and cubed) and use vegetable broth. Add 1 tsp liquid smoke or ½ tsp smoked paprika to mimic the ham's depth. For extra protein, stir in ½ cup cooked lentils with the beans. The vinegar and tomato paste will still provide that signature tangy richness.
Why does this recipe call for soaking beans overnight?
Soaking beans overnight (8-12 hours) dramatically reduces cooking time and prevents digestive discomfort. The beans absorb water, softening their skins and allowing them to cook evenly. For a quick version, use the quick-soak method: boil beans for 2 minutes>, then let them sit off heat for 1 hour before cooking. Just don't skip soaking—it's what makes the beans tender without turning mushy!
Can I make this soup in a slow cooker?
Follow the same steps for searing the ham and sautéing veggies, then transfer everything to your slow cooker. Add 1 cup broth to compensate for evaporation. Cook on low for 7-8 hours or high for 4-5 hours, stirring occasionally. The slow cooker's gentle heat creates the perfect tender beans and deeply flavorful broth. Just
