This creamy ham and potato soup is rich, hearty, and brimming with flavor. It’s the kind of meal that feels like a warm hug in a bowl — perfect for those nights when you want something easy yet super comforting.
I love making this soup after a big holiday meal because it’s a delicious way to use up leftover ham. The tender potatoes soak up all that rich, smoky goodness, and the creamy broth ties everything together beautifully.
Plus, it’s made with simple ingredients you probably already have in your kitchen.

WANT TO SAVE THIS RECIPE?
Even better, it’s ready in under an hour, but it tastes like it’s been simmering all day. That makes it ideal for busy weeknights when you need comfort food without the fuss.
Pair it with some crusty bread or a fresh green salad, and you’ve got a cozy family dinner everyone will love. Don’t be surprised if they come back for seconds!
Ingredients for Leftover Ham Soup
- Whole Milk: For a rich, comforting finish. If you prefer a lighter option, 2% milk works, though the soup won’t be quite as creamy. Or you could use half milk and half heavy cream if you want something more luxurious.
- Olive Oil: Used to sauté the veggies, adding richness and depth to the flavor. I prefer extra virgin olive oil for its smooth, buttery taste, but any cooking oil will work.
- Mirepoix (Carrot, Celery & Onion): This classic trio builds a flavorful base for the soup. I always dice them small, so they cook evenly and melt right into the creamy broth.
- Water & Chicken Bouillon: Instead of broth, I like to use cold water plus bouillon for extra control over the flavor. Feel free to swap in low-sodium chicken broth if that’s what you have on hand.
- Potatoes: Yukon Gold potatoes are my favorite because they stay creamy and tender, but Russet potatoes work well, too, if you prefer a fluffier texture. For a shortcut, I’ve even used diced frozen potatoes before — super convenient!
- Cooked Ham: Leftover ham is perfect here, but deli ham or ham steak works too. I like to dice it into small chunks, so you get a little in every bite.
- Black Pepper & Salt: These simple seasonings bring out all the rich flavors. Don’t skip the salt, but I recommend adding it right at the end. If you season with salt too soon, you might add too much.
- Unsalted Butter & All-Purpose Flour: This duo creates a quick roux, giving the soup its velvety, creamy texture. Stick with unsalted butter, as the ham and bouillon are already quite salty.

How to Make This Ham and Potato Soup Recipe
This leftover ham and potato soup is packed with tender potatoes, savory ham, and a rich, creamy broth.
Every spoonful is warm and cozy! I almost always make it when I have leftover ham, but honestly, I’ve bought ham just to make this soup.
Try it yourself, and you’ll see why my family can’t get enough!
1. Sauté the Veggies: Warm the oil in a large stockpot or Dutch oven over medium heat. Add the diced carrot, celery, and onion, and cook for 5-7 minutes, stirring often, until softened.
I like to stick with medium heat so the veggies soften without browning too quickly — this builds a great flavor base.


2. Add the Potatoes & Ham: Pour in the water, then add the diced potatoes, ham, bouillon, and pepper. Stir well, increase the heat to high, and bring the mixture to a boil.
Once boiling, reduce the heat to medium-low and let it simmer for 15-20 minutes or until the potatoes are fork-tender. Don’t skip stirring now and then — it helps everything cook evenly.


3. Make the Roux: While the potatoes cook, melt the butter in a medium skillet or saucepan over medium-low heat. Slowly whisk in the flour until smooth, then continue whisking for 1-2 minutes to cook off the raw flour taste. This step makes the soup creamy and thick — take your time!
4. Add the Milk: Gradually whisk in the milk, a little at a time, until fully incorporated and smooth. This should take 3-4 minutes. Whisk constantly for the creamiest texture. Once smooth, remove the skillet from the heat.
5. Combine and Thicken: Once the potatoes are tender, stir the roux into the soup. Stir often for 5-10 minutes until the soup thickens. If it’s too thick, add a splash of water to loosen it up.


6. Taste and Season: Don’t forget to taste and adjust the salt, if needed. The ham and bouillon add plenty of seasoning, but a pinch of additional salt can make everything pop.
7. Serve and Enjoy: Ladle the creamy soup into bowls and add your favorite toppings — I love shredded cheese, bacon bits, and a sprinkle of fresh parsley or sliced green onions. Serve with crusty bread or crackers for the ultimate cozy meal. Enjoy!
Slow Cooker Ham and Potato Soup
Turning this classic soup into a slow cooker recipe is easy — and perfect for busy days when you want dinner to cook itself. Instead of making a roux on the stove, we’ll use mashed potatoes (plus an optional slurry) to thicken the soup right in the crockpot.
1. Sauté the Veggies (Optional): Warm oil in a skillet over medium heat. Sauté the carrot, celery, and onion for 5-7 minutes until softened. This step adds flavor, but you can skip it to save time.
2. Load the Slow Cooker: Add the veggies, water, potatoes, ham, bouillon, and pepper to the slow cooker. Stir well.
3. Cook Low and Slow: Cover and cook on LOW for 6-8 hours or HIGH for 3-4 hours until the potatoes are fork-tender. For the best flavor, I recommend low heat.
4. Mash for Thickness: Mash some potatoes directly in the slow cooker for a thicker, chunkier soup.
5. Optional Slurry: For a creamier finish, whisk 1/4 cup flour with 1/4 cup cold milk and stir it in during the last 30 minutes.
6. Add Milk and Butter: Stir in the butter and remaining milk. Cook for 15-20 minutes until heated through.
7. Taste and Season: Add salt if needed — the ham and bouillon may add enough on their own. Enjoy!
For the best results, avoid adding dairy (milk or butter) too early in the cooking process — this helps prevent curdling and keeps the soup rich and creamy.

Tips for the Best Potato Soup
When it comes to creamy soup recipes, a few simple tricks can take them from good to amazing.
Over the years, I’ve picked up some helpful tips and tricks that make this soup extra creamy, flavorful, and downright comforting.
- Cook the Ham First: Fry it in the skillet, remove to a plate, then make the roux. This will give it a richer, more savory flavor and adds a slightly chewy texture that contrasts beautifully with the creamy potatoes. It’s a small step, but trust me — it makes a big difference!
- Don’t Over-Stir: Stirring too much can make the potatoes break down too fast, turning your soup gluey. Stir just enough to combine the ingredients.
- No Ham on Hand? Try cooked and crumbled bacon, sausage, or even shredded rotisserie chicken for a different spin.
- Prefer a Veggie Version? Omit the ham and add extra veggies like corn, peas, or broccoli for a vegetarian twist.
- Out of Fresh Veggies? Frozen diced carrots, celery, and onions work great in a pinch. Just toss them in straight from the freezer — no thawing required.
- Get Cheesy: Sharp cheddar or Monterey Jack work well if you’re garnishing with cheese. You can also experiment with other cheese varieties.

What to Serve with Ham and Potato Soup
This dreamy ham and potato soup is rich, hearty, and filling on its own, but I love pairing it with something extra to round out the meal.
A warm, crusty loaf of bread — like a baguette or homemade rosemary dinner rolls — is my favorite go-to. It’s perfect for soaking up every last drop of that creamy broth.
If you’re feeling indulgent, buttery garlic bread or cheesy breadsticks are fantastic options, too. Or if you’re serving a crowd, you can’t go wrong with classic comfort food sides like roasted veggies, cornbread, or even a grilled BLT cheese sandwich.
Frequently Asked Questions
Yukon Gold potatoes are ideal for their creamy texture, but Russets are great if you prefer a thicker, heartier soup. Red potatoes hold their shape better and offer a firmer texture.
Not necessarily! If you're using Yukon Gold or red potatoes, the skins are thin and tender, so you can leave them on for added texture and nutrients. I actually love the rustic look and extra flavor they bring.
If you’re using Russet potatoes, I recommend peeling them since their thicker skin can be a bit tough in creamy soups. Either way, be sure to scrub your potatoes well before cooking.
1. Use a potato masher or the back of a spoon to mash some of the cooked potatoes directly in the pot.
2. Mix 2 tablespoons of cornstarch with 2 tablespoons of cold water, then stir it into the soup. Let it simmer for 5-10 minutes until thickened.
3. Add a spoonful or two of potato flakes and stir well — they dissolve quickly and add thickness without altering the flavor.
4. Use an immersion blender to puree part of the soup right in the pot. Just be sure to leave some potato chunks for texture!
Sautéing the ham before adding it to the soup boosts its flavor. You can also add a pinch of smoked paprika, red pepper flakes, a splash of lemon juice, or an extra sprinkle of black pepper to deepen the taste.

How to Store Leftover Soup
Got leftovers? Save them for later!
And yes, you can freeze ham and potato soup, but because it contains dairy in the roux, there are a few things to consider. Cream-based soups can sometimes separate or develop a slightly grainy texture when thawed — but don’t worry, there’s a fix!
To Store: Transfer the soup to an airtight container and pop it into the fridge. It should remain fresh for 3-5 days.
To Reheat: Warm leftovers in a saucepan over medium heat. Keep a close eye on the soup, and don’t let it boil. You may need to add extra broth to thin it while heating it.
To Freeze: Skip the roux during the initial cooking. Instead, make the soup as directed up until that step. Cool it completely, then transfer it to an airtight, freezer-safe container. It will keep well for up to 3 months.
To Reheat Frozen Soup: Thaw the soup in the fridge overnight and reheat it gently on the stovetop. While reheating, prepare a fresh roux, whisk in the milk, and stir it into the soup for a creamy, smooth finish.
(I've done this before, and it makes a big difference — your soup will taste just as rich and comforting as the day you made it!)
More Creamy Soup Recipes to Try
Creamy Cajun Potato Soup
Kielbasa Potato Soup
Creamy Reuben Soup
Creamy Sausage Gnocchi Soup

















5 Comments
This is hands down an awesome recipe. I added what I had on hand which was broccoli that was cut into small pieces. And I added a teaspoon of dried rosemary and thyme. This could not have been better. Thank you for this wonderful recipe.
I made this soup on 10/21/2024. I started out with a fairly meaty ham bone in several cups of water, then added 2 Knorr vegetable bullion cubes. I cooked that on low heat for about 1.5 hours until the meat fell off the bone. I also added some more pieces of ham to make it meatier. For the “roux”, I used 1 cup whole milk and one cup of 2% because that’s all I had. As suggested, I also added some special seasoning that contains a few red pepper flakes to jazz it up a bit. I also added thyme and parsley near the end of cooking. It came out delicious! Good enough to share with friends.
Sounds delicious, Christina. <3
use some cream cheese and heavy cream also pepper cheese melt with cream cheese and heavy cream, thin with chicken stock if to thick, I bet you will love it.
Sounds yummy!