Navy bean soup is a hearty, feel-good meal made with smoked ham, veggies, and simple spices. It takes a little time to simmer, but you’ll end up with a big pot of soup that’s full of flavor and totally worth the wait.

Jump to:
What’s great about this recipe?
- Simple ingredients, big flavor – A handful of pantry staples come together to make a rich, satisfying soup with minimal fuss.
- Budget-friendly – Dried beans and smoked ham stretch into a hearty, affordable meal that’s perfect for feeding a family.
- Freezer-friendly – This soup freezes well, making it a great option for meal prep or saving leftovers for another day.
Ingredients

🫘 Dried Navy Beans – These small white beans are mild and creamy, perfect for soaking up all the savory flavors in the soup.
🍖 Smoked Ham – A smoked ham hock, shank, or leftover meaty ham bone all work well in this recipe. They add a rich, smoky flavor and help create a hearty broth.
🫒 Olive Oil – Used for sautéing the vegetables. Avocado oil or a little butter can also do the job.
🥕 Produce – Onion (yellow or white), carrots, celery, and garlic create a base that gives the soup depth and balance.
🍅 Tomato Paste – Just a tablespoon adds richness and color. It’s used with the vegetables to create a sofrito, the flavorful base of the soup.
🧂 Spices – A simple mix of oregano, paprika, and black pepper seasons the soup without overpowering it. A bay leaf is simmered with the soup for a subtle, herby note. Salt is added at the end, only if needed.
🍲 Broth – Chicken broth adds flavor, so you don’t have to start from scratch, and water balances it out, so the soup isn't too salty or heavy.
📖 See the recipe card for quantities and preparation.
Prep work tips and notes
Sort the beans – Sorting means picking through the beans and removing any that are substandard, misshapen, or discolored, along with anything that doesn’t belong (like small stones or debris).
Soak the beans – If you're using dried navy beans, soak them overnight or for at least 6–8 hours in clean, cool water. Or try a quick soak (my preferred method): Add the beans and 6–8 cups of water to a large pot. Place the pot over medium-high heat and bring the water to a boil. Boil for 2 minutes, then take the pot off the heat, cover, and let the beans soak for 1 hour. After soaking, rinse and drain the beans. In the meantime, start the rest of the prep.


Rinse the smoked ham – Give the ham hocks or shanks a quick rinse to remove excess salt. It’s a simple step that helps you better control the salt in the final dish.
Chop the vegetables – Do a small dice on the onion so it mostly dissolves into the broth. Dice the carrots and celery (or slice them if you want a more rustic feel). Mince the garlic.
Measure remaining ingredients – Gather and measure out the rest of your ingredients before you start cooking to keep things running smoothly.
How to make navy bean soup

- Heat the olive oil in a large pot over medium heat. When the oil is hot, but not smoking, add the onions, carrots, and celery. Cook for 5 minutes, stirring frequently.

- Add the garlic, tomato paste, oregano, paprika, and black pepper. Cook for 1–2 minutes, stirring often.

- Add the smoked ham, navy beans, chicken broth, water, and bay leaf. Stir well. Raise the heat to high and bring the liquid to a boil, about 6–8 minutes.

- Lower the heat to medium-low. Cover and simmer for 60 minutes, stirring occasionally. Maintain a gentle simmer—adjust the heat as needed.

- Use tongs to remove the smoked ham from the pot and place it on a cutting board or plate. Cover the pot and continue cooking the soup.

- Once the ham is cooled, remove the meat from the bones, discard the bones and any fatty pieces. Chop it, return it to the pot, and simmer for 15 minutes. Taste a few beans—if they’re tender, the soup is ready.
- If the beans are still a little firm, continue cooking in 15-minute increments, checking for tenderness and stirring more often as the soup thickens.
- Remove the bay leaf and discard. Taste the soup and add salt if needed. As a reference, we added ¾ teaspoon to ours. Serve with crusty bread or a side of white or brown rice, if desired.

Recipe tips and notes
Sort the beans – Don’t skip this step; there are always a few beans that are not up to par. Plus, I’ve found stones and tiny twigs in dry beans on more than one occasion.
Use reduced-sodium broth – If you’re sensitive to salt, use reduced-sodium broth and adjust at the end if needed.
Let it rest before serving – If you have time, let the soup sit for 10–15 minutes off the heat before serving. It will thicken slightly, and the flavors will meld together as it cools.
Substitutions and Variations
- Make it vegetarian – Skip the smoked ham and use vegetable broth instead of chicken broth. Add an extra ¼ to ½ teaspoon of paprika for more depth, and stir in a teaspoon of vegetable base (like Better Than Bouillon) to help boost flavor.
- Use different beans – If you can’t find navy beans (they can be tricky to track down sometimes), Great Northern or cannellini beans make good substitutes with a similar texture and mild flavor.
- Add extra vegetables – Bulk it up with diced potatoes, chopped spinach, or a handful of kale added in the last 15–20 minutes of cooking.
- Gluten-free – This soup is naturally gluten-free as long as your broth is certified gluten-free. Double-check the label if you’re serving someone with a gluten sensitivity.
Storing and Reheating Instructions
- Refrigerator – Allow the soup to cool completely before storing. Transfer leftovers to an airtight container and refrigerate for 3–4 days.
- Freezer – To freeze, cool the soup quickly and transfer it to airtight, freezer-safe containers. Leave about an inch of space to allow for expansion. Label with the date and contents, and freeze for up to 2–3 months.
- Reheating
- Stovetop – Place the soup in a covered saucepan and reheat over medium-low heat, stirring occasionally, until heated through (at least 165°F).
- Microwave – Transfer the soup to a microwave-safe dish and heat in 30-second intervals, stirring in between, until hot.
- Reheating Tip – Bean soups tends to thicken as they sit. If needed, stir in a few tablespoons of broth or water while reheating to loosen it up.
- Food Safety – Perishable foods should not be left at room temperature for more than 2 hours; if the ambient temperature is above 90°F, this time reduces to 1 hour. Reheat leftovers to an internal temperature of at least 165°F. For more information on food storage and safety guidelines, visit the U.S. Department of Agriculture and foodsafety.gov.
Frequently asked questions
Yes, soaking, either overnight or using a quick soak method, is recommended. Soaking helps hydrate the beans and jump-starts the cooking process, making them cook more evenly. I prefer the quick soak method (boil for 2 minutes, then soak for 1 hour), and it always works well.
Cooking time can vary depending on the age and quality of the beans. In general, expect them to take around 1 to 1½ hours to become tender. Check a few beans toward the end of the cooking time. If they’re still firm, continue cooking in 15-minute increments, tasting as you go.
If your navy bean soup isn’t thick enough, don’t worry—there’s an easy fix. First, uncover the pot and let it simmer for a few minutes to reduce some of the liquid. To thicken it further, scoop out a few spoonfuls of beans and use a fork to mash them in a small bowl. Stir the mashed beans back into the soup and let it simmer for a few more minutes, stirring occasionally. This adds body and thickens the broth naturally.
If the soup turns out too thick, stir in ¼ cup of broth at a time until it reaches your desired consistency, then warm through.
What’s new in this recipe
This recipe was originally published on December 26, 2018 and has been updated with new photos, numbered step-by-step instructions, and a helpful substitutions section. We also added detailed storing and reheating instructions, along with other tips to make the recipe even easier to follow and more useful for home cooks.

If you enjoyed this recipe, be sure to check out some of our other favorites. For more hearty options, try another bean soup like our bacon lentil soup or pinto bean soup. Craving something classic? You might like our broccoli cauliflower soup or French onion soup—both are restaurant-style favorites you can make at home.
Join Us
Subscribe to our Newsletter to get the latest recipes, cooking tips, and kitchen inspiration delivered straight to your inbox. Don’t forget to follow us on social media for daily recipe ideas and more!
📖 Recipe

Navy Bean Soup Recipe
Ingredients
- 16 ounces Navy Beans sorted, soaked, and rinsed (see recipe notes for step-by-step)
- 1 pound Smoked Ham Hocks, Shank, or Meaty Ham Bone rinsed
- 2 tablespoons Olive Oil
- 1 medium Onion small dice (about 1 cup)
- 2 large Carrots diced (about 1 cup)
- 2 Celery Ribs diced (about ½ cup)
- 3–4 Garlic Cloves minced
- 1 tablespoon Tomato Paste
- 1 teaspoon Oregano minced
- 1 teaspoon Paprika
- ¼ teaspoon Black Pepper
- 4 cups Chicken Broth
- 4 cups Water
- 1 Bay Leaf
- Salt to taste at the end, if needed
Instructions
- Heat the olive oil in a large pot over medium heat. When the oil is hot, but not smoking, add the onions, carrots, and celery. Cook for 5 minutes, stirring frequently.
- Add the garlic, tomato paste, oregano, paprika, and black pepper. Cook for 1–2 minutes, stirring often.
- Add the smoked ham, navy beans, chicken broth, water, and bay leaf. Stir well. Raise the heat to high and bring the liquid to a boil, about 6–8 minutes.
- Lower the heat to medium-low. Cover and simmer for 60 minutes, stirring occasionally. Maintain a gentle simmer—adjust the heat as needed.
- Use tongs to remove the smoked ham from the pot and place it on a cutting board or plate. Cover the pot and continue cooking the soup.
- Once the ham is cool enough to handle, remove the meat from the bones. Discard the bones and any fatty pieces. Chop the meat and return it to the soup.
- Continue simmering the soup for another 15 minutes. Taste a couple of beans—if they’re tender, the soup is done.
- If the beans are still a little firm, continue cooking in 15-minute increments, checking for tenderness and stirring more often as the soup thickens.
- Use tongs to remove the bay leaf and discard.
- Taste the soup and add salt if needed. As a reference, we added ¾ teaspoon to ours.
- Serve with crusty bread or a side of white or brown rice, if desired.
Notes
- Sort the beans – Go through the beans and remove any that are discolored or misshapen, along with any debris (stones, twigs, etc.).
- Overnight soaking method – Add the beans to a pot and cover with 4–6 cups of water. Soak overnight, then drain and rinse with cold water.
- Quick soaking method – (My preferred method) Add the beans and 6–8 cups of water to a large pot. Bring to a boil over medium-high heat and boil for 2 minutes. Remove from the heat, cover, and let soak for 1 hour. Then, drain and rinse well.
- If you’re sensitive to salt, use reduced-sodium broth and adjust at the end if needed.
- Cooking time will vary depending on the soaking method used and the freshness and quality of the beans. The listed time is based on our recipe testing. It does not include soaking. See the instructions above for details on overnight and quick soak methods.
Nutrition
The nutritional information above is computer generated and is only an estimate. There is no guarantee that it is accurate. This data is provided as a courtesy for informational purposes only.
Vivian
Thank you for this recipe, I’m watching it boil now for about 6 minutes then I will simmer for an hour or more. No need to tell you that this will be delicious, it’s a guarantee with the spices and veggies you suggested.
Thank you again for the recipe!!
Pam
I have a question, I removed the rest of the meat off a ham bone and froze the meat, do I need to buy the shank again😁?
Elizabeth Rodriguez
You can use leftover ham in this recipe. Thaw it overnight in the refrigerator before using. Also, since you won't have the shank to make the broth you might want to use some store-bought broth to add flavor.
Sue
We grew up with a very simple bean soup....either navy beans or great northern. Any kind of smoked ham will do -- left over baked ham, ham hocks, etc. But all we put in it is beans, ham, onion, carrots, celery, salt and pepper. Served with homemade cornbread. My siblings make it that way too, and we love it. And sometimes a little hot sauce.
Ralena
Made this soup today. I used the quick soak method and it worked well. The soup needed a bit more seasoning for our taste but was phenomenal! I saved the recipe and will be making it again. Thank you for sharing this recipe. 👍🏼
Carolina
Hello. I tried your recipe and it’s good. But, I wanted to send a suggestion. I grew up on beans. I am Mexican. Grew up in South Texas. I soaked as you suggested for faster cooking, but ham hock was just a bit firm. Not soft as I have made this dish before. For ham hock it’s best to cook with hard raw beans not soaked to achieve a soft ham hock. When I soak my beans to make frijoles a la charra everything is soft. Just need to be cooked in the last 30 minutes I will turn off. But, what I like from your is that it was not salty. Great idea to wash ham hock since it’s smoked with salt on it. That’s the only thing I wanted to say. Grand daughter and husband have happy tummies.
Heather Jones
Just wondering what is a sheet pan? I live in England also can I make this with baby Lima beans ?
Regards
Elizabeth Rodriguez
Hi Heather,
A sheet pan, also called a baking tray, baking sheet, or baking pan, is a flat, rectangular metal pan that's used in the oven for baking. As for the lima beans, You will need to adjust the cooking time as they take significantly longer than navy beans. Navy beans typically take around 45-90 minutes to cook. Lima beans are large and often require 80-180 minutes to cook. Perhaps you can set the lima beans to cook by themselves for a while, then start the instructions for the navy bean soup (draining the lima beans) adding them in par-cooked. Also, adjust the liquid if needed. That could work.
David
I made this with a couple of my own additions. Doubled the celery; added 4 pealed tomatillos pureed with 1 cup of cilantro leaves; added 1 tbs ground cumin. OMG! So good.
David
Correction: 1 tbs should read 1 tsp.
Janice
When I first tasted it was very bland. So, I added cumin, garlic powder, onion powder, cayenne and thyme. Let it simmer an additional 30 minutes. I would give this a 5 once you added flavor.
Marianne
Made this navy bean soup two days ago we can’t eat carrots in this family so I substituted chopped up portobello mushrooms and added a half a cup of half-and-half My son‘s absolutely raved over the soup best ever. I also substituted ham hocks for a spiral ham bone that I had in the freezer with a lot of meat still left on it and it was just phenomenal. This recipe is definitely a keeper. Thank you so much for the ideas..
Janice L
When the soup was completed my hubby and I thought it was very bland. I added: more salt and pepper, cumin, cayenne, chili powder and turmeric. It was popping with flavor after adding the additional spices. Very good. Thank you for sharing.
Mary Ann Batcho
The picture looked like the ham and bean soup that I remember my mom making. I had a large bone from a spiral ham from Easter dinner and a lot of ham leftovers so thought I would give it a try. Followed the recipe exactly except cooked it on low on the range for about three hours. Truly the best soup ever! Glad I doubled the recipe. It was better than my mom’s! We just can’t stop eating it. Thank you and cant wait to try some of your other recipes now.
Georgene
Can I use pork hock instead of ham shank for this recipe?
Elizabeth
Hi Georgene, Yes. The same instructions apply.
Michelle
Loved this recipe! Made it 1/6/24. My family loved it too. Thanks for the recipe!
Nona Vic
My family loved this bean soup! I made a couple of modifications using whole can tomato paste plus at the end added 1/2 cup Half & Half with 1 tablespoon all-purpose flour mixed in cooking 10 minutes longer. This addition created a nice slightly thicker texture. I cooked on low on stove for about 2 1/2 hours stirring every 30 minutes. Hearty robust flavor!
Laura
Just made this and it’s delicious
Robin Zaffino
Good recipe! I made it too smoky for my tastes - I think because I used ham broth (Better Than Bullion) instead of the chicken broth called for in addition to the smoked ham hock. I didn’t add any extra salt and it was fine for us.
Brenda Realini
Hello Everyone, I have made this soup twice it is a great recipe ! Thank you so much I shall share this with a lot of my friends ❤️
Elizabeth
Hi Brenda,
It is my pleasure! Happy to hear you enjoyed it, thank you for stopping by.
Gloria
I make this recipe in my crockpot. So delicious. I don't add as much water and don't need to precook the vegetables. Just dump and go for eight hours on low or six hours on high. I typically use a leftover ham bone from a holiday, pull it out of the crock and pull the meat off. I have also used ham hocks with the same results. Serve with crusty bread. My family loves it.
Sharie
Do u still have to soak the beans overnight?
Elizabeth
Hello Sharie,
I do. Usually I do the quick soak method and it works well.
Marion
Great recipe -- it will be my go-to from now on. Sautéing the smoked paprika and tomato paste add a depth of flavor to the soup. I made it according to the recipe with one addition. I added about a cup of leftover chopped kale and collard greens that had been cooked with bacon, onion, and garlic and seasoned with sherry vinegar. It was a nice addition.
Elizabeth
Hi Marion,
Thank you. The addition of the greens sounds delicious!
Sheila in MD
Does this soup freeze well? THanks!
Elizabeth
Hi,
Yes, but it may be necessary to add a little broth (or water) to reheat if it is too thick.
Lesli Agee
I made a large batch of this the past week, shared it, froze a bit in small grab & go containers for work and this recipe was loved by all! Great recipe in deed!
Elaine
My mom always made this soup using bacon. Anyone else? Love this soup with fresh Italian bread
Carolyn
I love making soups but had never made Navy Bean. I used to order from a restaurant for lunch at my job years ago and loved it! I made this recipe today and have to say, it was a winner! Hubby texted at lunch to say it was awesome soup! I just had some and agree, it’s delicious! I soaked the beans overnight and followed recipe exactly but I did mix a little flour with water and added to soup at the end just to thicken slightly. Will definitely be in my soup rotation recipes!
Elizabeth
Hello Carolyn,
Thank you for your kind review, I'm glad you both enjoyed it!
Beverly
I made this wonderful recipe today….mostly because the picture looked just like the navy bean soup my Granny made years ago….followed the recipe except…..I confess to adding heavy cream as my Granny always did….about a cup or so. Just WONDERFUL!!!
Elizabeth
Hi Beverly,
I'm happy to hear you enjoyed it. The cream sounds like a good idea, I usually add it to pureed soups, but I can see how it would work with this too. Thanks for sharing!
JRiley
Oh my stars! Absolutely delicious soup made with a Honey Baked Ham bone. I followed the recipe as written and used an immersion blender on half of it at the end. So, so good. Thanks for sharing.
Elizabeth
Thank you! Glad you enjoyed it.
Carol
I made this soup tonight and it was fabulous. Used a meaty ham bone from a previous dinner rather than the smoked ham shank. I’ve made my fair share of navy bean soup over the years, (husband’s favorite), but this was hearty and incredibly flavorful. Thanks you!
Elizabeth
Thank you for your kind comment. I'm happy you enjoyed it!