This ham bean soup is the ultimate comfort food you’ll crave all season long, a classic American dish that transforms a simple ham bone and dried beans into something truly magical. It’s the kind of meal that simmers on the stove and makes your entire house smell like home. I grew up watching my grandmother make her version, and it’s always been my favorite way to use up a holiday ham. That slow-cooked, soul-satisfying flavor is something you just can’t rush.
Why You'll Love This Recipe
- It turns a humble leftover ham bone into a feast that feels luxurious
- You get a huge pot of protein-packed soup for just pennies per serving
- The flavor deepens beautifully, making it an ideal make-ahead meal
- It’s the coziest, most filling one-pot dinner you can imagine
- I promise your kitchen will smell incredible for hours
Ingredients You’ll Need
- Dried Great Northern or navy beans: they hold their shape beautifully during the long simmer but still get wonderfully creamy and tender, creating the soup’s hearty backbone.
- Olive oil: for sautéing your vegetables to build a flavorful foundation right from the start.
- Yellow onion, carrots, and celery: the classic aromatic trio that adds sweetness, earthiness, and depth to every single spoonful.
- Garlic: minced finely so it melts into the broth and provides that essential savory, aromatic punch.
- Meaty ham bone or ham hock: this is the flavor superstar, infusing the entire pot with rich, smoky, salty pork essence as it simmers.
- Low-sodium chicken broth or water: using a low-sodium base lets you control the final salt level since the ham adds plenty.
- Bay leaves and dried thyme: these herbal notes add a subtle, woodsy complexity that balances the richness of the ham.
- Freshly ground black pepper: a must for a little warmth and spice that cuts through the soup’s heartiness.
- Leftover cooked ham: diced pieces add pleasant texture and extra meaty bites throughout the finished soup.
- Fresh parsley: a bright, fresh garnish that adds a pop of color and a light herbal finish.
- Crusty bread or cornbread: the essential tool for sopping up every last drop of the delicious broth.
How to Make It
Soak Your Beans:
Begin by soaking your dried beans overnight in a large bowl of cold water. This crucial step rehydrates them, which leads to more even cooking and tender beans in your final ham bean soup. Simply drain and rinse them when you’re ready to start cooking.
Sauté the Aromatics:
Heat the olive oil in your big soup pot over medium heat. Add the diced onion, carrots, and celery, and cook them until they’re soft and the onion is translucent. This sweetens the vegetables and builds the soup’s foundational flavor layer.
Bloom the Garlic:
Push the vegetables to the side and add the minced garlic to the center of the pot. Let it cook for just about a minute, stirring constantly. You’ll know it’s ready when your kitchen fills with that incredible, fragrant smell.
Build the Soup Base:
Add the drained beans, your meaty ham bone, broth, bay leaves, thyme, and pepper to the pot. Bring everything to a lively boil, then immediately reduce the heat. This quick boil helps everything start cooking together efficiently.
Simmer to Tenderness:
Cover the pot with the lid slightly askew to let some steam escape. Let it all simmer gently for up to two hours. The long, slow cook is what makes the beans creamy and pulls all the incredible flavor from the ham bone into the broth.
Shred the Ham:
Carefully remove the ham bone and place it on a cutting board to cool just enough to handle. Don’t forget to fish out and discard the bay leaves now, too. Use two forks or your fingers to pull every last bit of tender meat from the bone.
Finish and Adjust:
Return the shredded meat to the pot and stir in your diced ham. Let it all simmer together for another ten to fifteen minutes. This is your chance to taste and decide if it needs a pinch of salt, depending on how salty your ham was.
Serve and Enjoy:
Ladle the hot soup into deep bowls. If you want it thicker, you can mash a few beans against the pot with your spoon. Top with a sprinkle of fresh parsley and serve immediately with your bread of choice on the side.

You Must Know
- Soaking the beans overnight is non-negotiable for the best texture
- The more meat on your ham bone, the richer your broth will be
- Always taste before adding extra salt at the end
- Leftovers are arguably better than the first bowl
Storage Tips
Let your ham bean soup cool completely on the counter before transferring it to airtight containers. It keeps beautifully in the fridge for up to four days, and the beans will continue to soak up that flavorful broth. For longer storage, you can freeze it for up to three months. I like to portion it into individual containers for easy lunches. When you’re ready to eat, thaw it overnight in the fridge and reheat it gently on the stovetop, adding a splash of water or broth if it seems too thick.
Ingredient Substitutions
If you don’t have Great Northern beans, navy beans are a perfect one-to-one swap, or you could even use cannellini beans for a slightly larger, creamier result. No ham bone? A couple of smoked ham hocks from the butcher will give you that same deep flavor. For the broth, water works just fine because the ham bone provides so much richness, though a homemade stock is always a bonus. Fresh thyme is wonderful if you have it—use about three sprigs instead of the dried. And if you’re out of parsley, a little chopped chive or green onion makes a lovely fresh garnish.
Serving Suggestions
A thick slice of warm, buttered cornbread is my absolute favorite pairing—it’s practically made for this soup. A crusty baguette or a piece of toasted sourdough is also perfect for dipping. For a lighter meal, start with a simple side salad dressed with a sharp vinaigrette to cut through the soup’s richness. In our house, we often serve it with a big spoonful of tangy sauerkraut on the side, which might sound unusual but it’s a classic and delicious combination that really works.
Cultural Context
Ham and bean soup is a cornerstone of American home cooking, with roots stretching back to thrifty traditions of making the most of every part of a meal. It’s especially beloved after holidays like Easter or Christmas, when a glazed ham leaves behind a precious bone packed with flavor. You’ll find regional variations across the country, from the Senate bean soup served in the U.S. Capitol to heartier versions with greens in the South. At its core, it’s a dish born from resourcefulness and slow cooking, turning humble, economical ingredients into a pot of pure comfort that feeds a crowd.

Pro Tips
- For a faster soak, boil the beans for two minutes then let them sit covered for an hour
- Simmer the soup uncovered at the end if you want a thicker, more concentrated broth
- A small splash of apple cider vinegar at the end brightens all the flavors perfectly
- I always freeze the ham bone if I can’t make soup right away
Frequently Asked Questions
Great Northern or navy beans are traditional for ham bean soup because they hold their shape well during the long simmer and have a creamy texture that thickens the broth. You can also use cannellini beans as a great substitute.
Absolutely! This soup tastes even better the next day. Let it cool completely, then store it in an airtight container in the refrigerator for up to 4 days. The flavors will continue to develop and meld beautifully.
If you don’t have a leftover ham bone, you can use a smoked ham hock from the grocery store. Alternatively, use 8 ounces of diced ham and add a teaspoon of smoked paprika to the vegetables while sautéing to mimic the smoky, savory depth.
The soup is ready when the beans are completely tender and the meat is falling off the bone. This usually takes the full 2 to 2.5 hours of gentle simmering. The broth will have thickened slightly from the softened beans.
This hearty American soup is a complete meal on its own, but it pairs wonderfully with crusty bread, cornbread, or a simple side salad. For a traditional touch, serve it with a slice of buttered cornbread to soak up the flavorful broth.