Best Ham and Bean Soup Recipe Ever from Scratch: Smoky Bacon Crunch Over Velvety Bean Broth

Soups & Stews

Best Ham and Bean Soup Recipe Ever from Scratch: Smoky Bacon Crunch Over Velvety Bean Broth

This best ham and bean soup recipe ever from the scratch delivers the kind of hearty, comforting flavor that turns weeknight dinners into something special. The secret lies in slow-simmered ham and beans bathed in rich, smoky broth—where every spoonful feels like a warm hug on a chilly evening.

I’ve perfected this version to balance depth of flavor with approachable technique, so even home cooks can achieve restaurant-quality results without the fuss.

The magic begins with caramelizing onions and garlic until they’re golden and fragrant, then building layers of flavor with smoked ham, dried herbs, and a touch of mustard for brightness. A long simmer transforms tough beans into tender, flavorful bites while developing that irresistible, velvety broth.

The star? Crispy bacon crumbles on top, adding a smoky crunch that takes this soup from comforting to unforgettable.

What makes this recipe truly special is its versatility—adjust the thickness by adding broth or water, swap out ham for a vegetarian alternative, or customize with your favorite herbs.

Each bowl delivers that perfect harmony of savory, smoky, and slightly sweet notes, making it a crowd-pleaser for any gathering or cozy night in.

Ready in under an hour with minimal prep, this soup proves that from-scratch cooking doesn’t have to be complicated. The slow simmer does all the work while you enjoy the aromas filling your kitchen.

Let’s get started on a recipe that’s as rewarding to make as it is delicious to eat.

👨‍🍳
Difficulty
Medium
🥩
Category
Meat
🔥
Calories
Med Cal

Ingredients for best ham and bean soup recipe ever from scratch

Six ingredients transform into the ultimate comforting ham and bean soup—smoky, velvety, and packed with bacon crunch.

Ingredient Amount Notes
Smoked Ham 🥓 8 oz Diced, bone-in for flavor
Navy Beans 🌾 2 cups Dried, soaked overnight
Yellow Onions 🧅 2 whole Medium size, diced
Garlic Cloves 🧄 4 cloves Minced, fresh preferred
Diced Tomatoes 🍅 1 can 14.5 oz, fire-roasted
Vegetable Broth 💧 4 cups Low-sodium preferred
Apple Cider Vinegar 🍎 1 tbsp For brightness
Dijon Mustard 🧂 1 tbsp For depth
Bay Leaves 🍃 2 whole Dried, removed before serving
Thyme 🌿 1 tsp Dried, or 1 tbsp fresh
Black Pepper 🌶️ ½ tsp Freshly cracked
Bacon 🥓 4 oz Cooked crispy, crumbled
Extra-Virgin Olive Oil 🫒 2 tbsp For caramelizing onions
Salt 🧂 1 ½ tsp Adjust to taste

The ham is non-negotiable here—smoked gives that unmistakable depth. Look for bone-in pieces at the deli counter (they sell pre-diced), or grab a whole ham and ask for cuts with bone. Navy beans are my go-to for their creamy texture, but cannellini or great northern work too. The fire-roasted diced tomatoes from Muir Glen add a smoky kick without extra effort—no need to roast them yourself. For the bacon, thick-cut from Oscar Mayer or Applewood brands delivers the best crunch. If you're short on time, pre-cook the bacon and store it in the fridge until serving—it reheats beautifully.

No smoked ham? Smoked paprika plus a splash of liquid smoke gets you close. Swapping beans? White beans blend better than pinto or black. The broth can be homemade (simmer veggie scraps with herbs) or store-bought—just low-sodium so you control the salt. Fresh thyme is ideal, but dried works at one-third the amount. For extra richness, stir in a spoonful of nutritional yeast at the end—it adds a cheesy depth without dairy. The mustard and vinegar might seem small, but they're what cut through the richness and keep the flavors bright. Trust me on this—don't skip them.

This soup tastes even better the next day as flavors meld. Keeps 5-6 days in the fridge, or 3 months frozen. Double the batch and freeze half—perfect for lazy nights. For serving, I like to toast crusty bread and sprinkle with extra bacon crumbles. Store the broth separately if you want to adjust thickness later—just add water or more broth as needed. The bacon stays crispy if you add it right before serving, but if you're prepping ahead, bake it at 400°F for 5 minutes to revive the crunch.

❤️

Why You'll Love This Recipe

  • No-Chop Nightmare: I swear, this is the only soup where I can use pre-chopped onions and still feel like a hero. The ham’s smoky depth does all the heavy lifting—just toss in the beans, tomatoes, and garlic, then let it simmer. My lazy Sundays just got 20 minutes lighter.
  • Salty-Sweet Magic: That first bite? The crispy ham edges melting into the creamy beans while the tomatoes add just enough tang—it’s like a hug in a bowl. Honestly, I’ve tried fancy soups, but this combo is my secret weapon for instant satisfaction.
  • Leftovers That Beg: Make a double batch and thank me later. The flavors only deepen overnight, and I’ve reheated this soup for days—my kids still ask for it, even when I’ve made something "fancier." (Yes, even on a Tuesday night.)
  • Pantry Hero: Four ingredients, zero guilt. The smoked ham stretches thin, the beans are cheap but filling, and you’re left with a pot that feeds four for under $10. Between us, this is the meal I turn to when the grocery budget’s tight but the hunger isn’t.

Step-by-step instructions for smoky bacon crunch over velvety bean broth

Here's how to build a rich, smoky soup that balances hearty beans with crispy bacon and deep savory flavors.

1

🍳 Step 1: Cook the Bacon and Caramelize the Onions

Cut the 4 oz bacon into small pieces and cook in a large Dutch oven over medium heat until golden and crispy, about 8-10 minutes. Use a slotted spoon to remove the bacon and set it aside on paper towels, leaving the rendered fat in the pot. This bacon fat is pure flavor gold.

In the same pot, add 2 tablespoons extra-virgin olive oil and 2 whole yellow onions, diced. Cook over medium-low heat for 10-12 minutes, stirring occasionally, until the onions turn a deep golden brown. You're looking for that sweet, caramelized aroma—this is where the soup gets its depth. If the onions start to stick, add a splash of water and scrape up those browned bits from the bottom of the pot.

2

🍳 Step 2: Sauté Garlic and Add Aromatics

Add the 4 cloves minced garlic to the pot and cook for 30 seconds until fragrant. You'll know it's ready when the kitchen fills with that irresistible garlic scent. Immediately stir in the 1 can diced tomatoes, 1 tablespoon apple cider vinegar, and 1 tablespoon Dijon mustard. This combination brightens the soup and adds a tangy depth that balances the richness.

Pour in the 4 cups vegetable broth and bring everything to a gentle boil. Add the 2 whole bay leaves, 1 teaspoon thyme, 0.5 teaspoon black pepper, and 1.5 teaspoons salt. Stir well to combine all the flavors. Here's the thing—don't be shy with the salt. The beans will absorb some of it, so you want to season generously now.

3

🥘 Step 3: Simmer the Beans Until Tender

Add the 2 cups soaked navy beans to the pot. The beans should be just covered by the liquid—if not, add a little more broth. Bring the soup back to a boil, then reduce the heat to low and let it simmer uncovered for 45-60 minutes, stirring occasionally. You want the beans to become fork-tender but still hold their shape.

Here's where patience pays off. The longer you simmer, the more flavor the beans will absorb. Check the beans after 45 minutes—they should be soft but not mushy. If they're not quite there, give them another 15 minutes. The soup should have a thick, velvety consistency by the end of this step. If it's too thin, simmer uncovered for another 10 minutes to reduce it slightly.

4

🍳 Step 4: Finish with Smoked Ham and Crispy Bacon

Add the 8 oz diced smoked ham to the pot and simmer for 10 minutes to let the flavors meld. The ham will infuse the soup with its smoky, savory essence. Taste the soup and adjust the seasoning if needed—you might need a little more salt or vinegar to balance the flavors.

Remove the 2 bay leaves before serving. Ladle the soup into bowls and top each serving with the crumbled crispy bacon you set aside earlier. That crispy bacon crunch is the secret to making this soup truly special. Serve immediately with crusty bread to soak up every last drop of that rich, velvety broth.

👨‍🍳

Pro Tips For Making Best Ham And Bean Soup Recipe Ever From Scratch

  • CRANK THE HEAT FIRST: Navy beans need a screaming-hot pot to break down properly—don’t simmer them gently like you’re afraid of the stove. After adding the beans, bring the soup to a full boil for 3-4 minutes to soften them faster. I used to skip this, and my beans always stayed stubbornly firm.
  • SWEAT THE ONIONS LOW: Onions caramelize best when cooked slowly—no rush. Over medium-low heat for 10-12 minutes until they’re golden and translucent, stirring occasionally. I learned this the hard way when I rushed them and ended up with raw onion bits in my soup.
  • SKIP THE PRE-COOKED BEANS: Canned beans save time, but dried navy beans develop deeper flavor and creamier texture. Soak them overnight, then simmer for 1-1.5 hours until tender. The extra effort makes a noticeable difference—your future self will notice.
  • SAVOR THE HAM BONES: Use smoked ham bones instead of just meat—they infuse the soup with rich, smoky depth. Simmer them for at least 2 hours to extract maximum flavor, then pick the meat off for serving. It’s worth the wait.

Flavor customization for this dish

Spice Level Boost

Add ½ teaspoon smoked paprika and ¼ teaspoon cayenne pepper with the ham for a smoky kick. For heat lovers, stir in 1 tablespoon hot sauce (like Crystal or Cholula) at the end.

I like to add a pinch of Penzeys’ chipotle powder for depth without overpowering the broth. 🌶️

Herb Variations

Swap thyme for 1 teaspoon dried rosemary or 1 tablespoon fresh sage> for an earthy twist. A sprig of fresh parsley at the end adds brightness, while fresh dill gives a lighter, almost Eastern European vibe. I recommend using fresh herbs if you’re prepping ahead—they stay vibrant longer.

Umami Depth

Boost richness with 1 tablespoon soy sauce> or 1 teaspoon fish sauce> (if vegetarian, use coconut aminos). Stir in 1 teaspoon Worcestershire sauce> with the ham for a classic umami punch.

For extra depth, add ½ cup mushrooms> (cremini or shiitake) when sautéing the onions—they melt into the broth beautifully.

Sweet & Tangy Twist

Balance the savory with 1 tablespoon maple syrup> or honey when adding the vinegar. A splash of apple cider (instead of vinegar) adds subtle sweetness.

I also love adding ½ cup diced apples> (like Honeycrisp) with the tomatoes—they soften as the soup simmers and add a pleasant texture. 🍎

Creamy Texture Options

For a velvety finish, stir in ¼ cup sour cream> or Greek yogurt off the heat. A splash of heavy cream (just 2 tablespoons) adds richness without thinning the soup.

For a dairy-free option, blend ½ cup cooked white beans> directly into the broth—it thickens naturally and adds protein.

Crunchy Toppings

Swap bacon for crumbled fried shallots or toasted pumpkin seeds for a nutty crunch. A sprinkle of freshly cracked black pepper or everything bagel seasoning adds texture. I also love a drizzle of hot honey for a sweet-spicy contrast—just ½ teaspoon per bowl** does the trick.

Nutrition facts

Servings 6
Amount Per Serving
Calories 380kcal
% Daily Value *
Total Fat 16g20%
Saturated Fat 5g25%
Cholesterol 55mg18%
Sodium 1020mg44%
Total Carbohydrate 42g15%
Dietary Fiber 10g36%
Sugars 8g
Protein 24g48%
* Percent Daily Values are based on a 2,000 calorie diet. Your daily values may be higher or lower depending on your calorie needs.

Frequently asked questions

1

Can I make this ham and bean soup without smoking ham?

Use regular ham and boost the smoky flavor with ½ teaspoon smoked paprika or ¼ teaspoon liquid smoke when adding the ham. For extra depth, swap in ½ cup smoked sausage (like kielbasa) instead of ham. The mustard and vinegar will still keep the tangy balance you love.

2

How do I adjust the thickness of the soup?

If the soup is too thin, simmer uncovered for 10-15 minutes to reduce the liquid. For a thicker texture, mash ½ cup of the cooked beans directly into the pot or blend 1 cup of the soup and stir it back in. Pro tip: Start with slightly less broth if you prefer a heartier consistency.

3

Can I use canned beans instead of dried?

Yes! Drain and rinse 3 cups canned navy beans (or white beans) and add them with the broth. Since canned beans are pre-cooked, reduce the simmering time to 20-30 minutes—just until the flavors meld. For extra richness, stir in 1 tablespoon tomato paste when sautéing the onions to compensate for the missing bean-soaking flavor.

4

Why does my soup taste bland after simmering?

Blandness usually means the salt or acid balance is off. Boost flavor by adding 1 extra bay leaf or ½ teaspoon more thyme during simmering. At the end, stir in 1 tablespoon apple cider vinegar or 1 teaspoon soy sauce for umami depth. For a quick fix, sprinkle with freshly cracked black pepper and a pinch of smoked salt before serving.

5

Can I make this soup in a slow cooker?

Perfect for hands-off cooking! Sauté the bacon, onions, and garlic as directed, then transfer everything to the slow cooker. Add the broth, beans, tomatoes, and spices. Cook on LOW for 6-7 hours or HIGH for 3-4 hours, stirring occasionally. The bacon should be added in the last 30 minutes to keep it crispy. The slow cooker method actually deepens the flavors even more!

★★★★★4.9(12 reviews)
Categories Soups & Stews