One pot ham and potato soup lands in that perfect middle ground between hearty and comforting without turning heavy or bland. The potatoes break down just enough to thicken the broth, while the ham brings salty depth and little bites of smoky richness in every spoonful. What you get is a creamy soup with real texture, not a bowl of thin broth pretending to be dinner.
The trick is building the base in the same pot from the start. Butter, onion, carrot, and garlic give the soup its backbone, but the flour needs a minute to cook before the broth goes in or the finished soup can taste pasty. I also like adding the cream near the end, after the potatoes are tender and partially mashed, so the soup thickens from the potatoes instead of leaning on too much dairy.
Below, I’ll walk through the step that gives this soup its body, the ingredient swap that still keeps it creamy, and the best way to reheat leftovers without turning the potatoes grainy.
The potatoes softened exactly in the time listed, and mashing a few right in the pot made it thick and creamy without needing extra flour. My husband went back for a second bowl before I even sat down.
Creamy one pot ham and potato soup is the kind of meal that gets thicker, richer, and better after a quick mash and one final simmer.
The Step That Keeps This Soup Thick Instead of Watery
Most ham and potato soups go thin because the potatoes are left to do all the work, or because the broth gets added before the flour has a chance to cook. Here, the butter, flour, onion, and carrot build a light base first, which gives the soup body before the potatoes even soften. That’s what keeps the broth from tasting flat and makes each spoonful feel substantial.
The other move that matters is mashing a portion of the potatoes right in the pot. Don’t blend the soup smooth unless you want a much heavier texture. A few mashed potatoes thicken the broth naturally and leave plenty of chunks behind, which is what makes this soup eat like a meal instead of a puree.
What Each Ingredient Is Actually Doing In This Soup

- Russet potatoes — These are the best choice here because they break down just enough to thicken the soup while still holding soft chunks. Yukon Golds work too, but the soup will stay a little silkier and less starchy. If you use waxy potatoes, you’ll lose that built-in thickness.
- Cooked ham — Leftover ham works beautifully because it’s already seasoned and has that deeper savory flavor. Deli ham will work in a pinch, but it’s softer and usually saltier, so add it closer to the end and season more carefully. Dice it small enough to get a little of everything in each bite.
- Heavy cream — This gives the soup its rounded finish and keeps the broth from feeling lean. Half-and-half can be used if that’s what you have, but the soup will be a touch lighter and less plush. Add it after the potatoes are tender so it stays smooth.
- Dijon mustard — It doesn’t make the soup taste mustardy. It sharpens the broth and lifts the ham and potato flavor without extra salt. Skip it and the soup still works, but it loses a little edge.
- Flour and butter — This is the quick roux that gives the broth structure. Cook it for a minute or two so the soup doesn’t taste raw or starchy. If you need a gluten-free version, use a 1:1 gluten-free flour blend and cook it the same way.
Building the Base So the Soup Never Turns Grainy
Softening the vegetables first
Melt the butter in a large pot and cook the onion and carrots until the onion looks translucent and the carrots start to lose their raw crunch. This takes about 5 minutes over medium heat. If you rush this stage, the onion stays sharp and the carrot pieces can taste underdone even after the simmer.
Cooking out the flour
Stir in the garlic, then whisk in the flour and let it cook for 1 to 2 minutes. The mixture should look pasty and coat the vegetables, but it should not darken much. This short cook time keeps the soup from tasting floury and helps the broth thicken evenly once it goes in.
Simmering until the potatoes give in
Pour in the broth, add the potatoes and garlic powder, then bring everything to a boil before lowering it to a steady simmer. The potatoes are ready when a fork slides in easily and the edges just begin to break apart, usually around 18 to 20 minutes. If the heat is too low, the potatoes take forever and the soup stays thin; if it’s too high, the broth can reduce too much before the potatoes cook through.
Finishing with cream, ham, and the last bit of seasoning
Once the potatoes are tender, mash a portion of them directly in the pot. Stir in the cream, ham, and Dijon mustard, then simmer for another 5 minutes so the flavors settle together. Season at the end with salt and pepper, because ham and broth can vary a lot in saltiness and you don’t want to overdo it early.
How to Adapt This Soup for Different Kitchens and Different Eaters
Make It Gluten-Free Without Losing Body
Swap the all-purpose flour for a cup-for-cup gluten-free flour blend and cook it in the butter the same way. The texture stays close to the original, especially because the potatoes also thicken the soup. Don’t skip the roux entirely or the broth can end up a little loose.
Use Leftover Turkey or Chicken Instead of Ham
Cooked turkey or chicken works if that’s what you have, but you’ll lose the smoky saltiness that ham brings. Add a little extra Dijon and taste more carefully at the end so the soup still has enough depth. This version turns a holiday leftover into a lighter, still-hearty bowl.
Make It Lighter With Milk Instead of Cream
Whole milk will work, but the soup will be less rich and a little thinner. If you use milk, keep the heat low after adding it and don’t let the pot boil again or it can taste scalded. A splash more mashed potato helps bring the body back.
Storage and Reheating
- Refrigerator: Store in an airtight container for up to 4 days. The soup thickens as it chills, so expect it to look a little heavier the next day.
- Freezer: It freezes, but the cream and potatoes can turn slightly grainy after thawing. For the best texture, freeze before adding the cream, then stir it in after reheating.
- Reheating: Warm it gently on the stovetop over low heat, adding a splash of broth or milk to loosen it. Don’t boil it hard, or the dairy can separate and the potatoes can break down too far.
Answers to the Questions Worth Asking

One Pot Ham and Potato Soup
Ingredients
Equipment
Method
- Melt the butter in a large pot over medium heat, then sauté the onion and carrots for 5 minutes until softened.
- Add the minced garlic and cook for 1 minute, then whisk in the flour and cook for 1–2 minutes to remove the raw flour taste.
- Pour in the chicken broth, add the cubed russet potatoes, and stir in the garlic powder.
- Bring the soup to a boil, then simmer for 18–20 minutes, stirring occasionally, until the potatoes are tender.
- Mash a portion of the potatoes in the pot for thickness, then stir to blend.
- Stir in the heavy cream, diced ham, and Dijon mustard, then simmer for 5 minutes until heated through.
- Season with salt and pepper to taste, then serve topped with fresh parsley and shredded cheddar.


