Potato Soup Recipe That'll Hug You From the Inside
To make potato soup, simmer diced potatoes with onion and garlic in broth until tender, then blend part of the soup for creaminess and stir in heavy cream and cheese. The whole process takes about 45 minutes from cutting board to bowl.
I called in sick on a Tuesday in February, which is the most February thing that can happen, and by noon I had decided that what I needed was soup and that I was too sick to go to a restaurant but not sick enough to eat crackers alone on the couch for a second meal. I had potatoes, chicken broth, half a block of cheddar, and the general will to make something happen. This is how potato soup became my standard sick-day meal.
The version I made that first time was fine but thin — more like a potato-flavored broth with chunks than an actual soup that carried itself. The thickness comes from two places: some of the potato gets mashed directly into the broth to thicken it, and the rest stays in chunks for texture. You don't need a roux or a thickener if you use enough potato and take the time to mash a portion of what's in the pot before you add the cream.
The toppings are not optional garnish. Sharp cheddar melted directly into the hot soup. Sour cream stirred in at the end for richness and tang. Bacon or chives if you have them, which adds the salt and crunch that a soup this soft needs to stay interesting past the first three bites. Season generously — potatoes absorb salt and the cream dulls it, so the soup needs more seasoning than you'd expect going in.
By the time I finished the bowl, I felt noticeably less like February. I make it now whenever the season turns cold, not just when I'm sick. February is when it hits different.
Ingredients
- 6 strips bacon, chopped
- 1 medium yellow onion, diced (about 1 cup)
- 3 cloves garlic, minced
- 3 tablespoons unsalted butter
- 3 tablespoons all-purpose flour
- 4 cups chicken broth
- 2 cups whole milk
- 2 pounds russet potatoes, peeled and cut into ¾-inch cubes (about 4 medium potatoes)
- 1 teaspoon kosher salt, plus more to taste
- ½ teaspoon black pepper
- ½ teaspoon smoked paprika
- ½ cup heavy cream
- 1½ cups sharp cheddar cheese, shredded (freshly shredded, not bagged)
- ½ cup sour cream
- 3 green onions, thinly sliced, for serving
- Extra shredded cheddar and bacon for topping
Instructions
- 1In a large heavy-bottomed pot or Dutch oven over medium heat, cook the chopped bacon until crispy, about 6–8 minutes. Remove the bacon with a slotted spoon and set aside on a paper towel-lined plate. Leave about 2 tablespoons of bacon drippings in the pot and discard the rest.
- 2Add the diced onion to the pot and cook in the bacon drippings over medium heat until softened and translucent, about 4–5 minutes. Add the garlic and cook for another 60 seconds, stirring constantly, until fragrant.
- 3Add the butter to the pot and let it melt into the onions. Sprinkle the flour over the onion mixture and stir continuously for about 1–2 minutes to cook out the raw flour taste. The mixture will look a little pasty —? that is correct.
- 4Slowly pour in the chicken broth while stirring to prevent lumps, scraping up any bits from the bottom of the pot. Add the milk, diced potatoes, salt, pepper, and smoked paprika. Stir to combine.
- 5Bring the soup to a boil over medium-high heat, then reduce heat to medium-low. Simmer uncovered for 15–18 minutes, stirring occasionally, until the potatoes are completely fork-tender.
- 6Using an immersion blender, blend about one-third of the soup directly in the pot —? you want some texture left, not a completely smooth purée. Alternatively, carefully ladle about 2 cups of the soup into a blender, blend until smooth, and stir it back in. This step is what makes the soup thick and creamy without adding extra starch.
- 7Reduce the heat to low. Pour in the heavy cream and stir to combine. Add the shredded cheddar in two or three handfuls, stirring between each addition until fully melted. Do not let the soup boil after adding the cheese —? it can break and turn grainy.
- 8Remove the pot from heat and stir in the sour cream until fully incorporated. Taste and adjust salt and pepper as needed.
- 9Ladle into bowls and top with reserved bacon, extra shredded cheddar, and sliced green onions. Serve immediately.
Pro Tips
- Shred your own cheddar. Bagged pre-shredded cheese has a starch coating that makes sauces grainy and melts unevenly. I learned this the hard way in front of company, and I mention it here so you do not have to.
- Cut your potato pieces as uniformly as you can manage. Uneven cubes mean some will be mushy while others are still firm, and the soup will have an identity crisis about what texture it is going for.
- Do not skip the partial blend. Watery potato soup is almost always the result of skipping this step. You do not need a fancy blender —? a potato masher pressed against the side of the pot a few times does about 80% of the same job.
Substitutions
Storage Instructions
Store cooled leftover soup in an airtight container in the refrigerator for up to 4 days. Reheat gently on the stovetop over low heat, stirring frequently —? do not boil or the dairy can separate. Add a splash of broth or milk when reheating to loosen the consistency, since the soup thickens significantly when cold. Potato soup does not freeze well; the potato texture becomes grainy and watery after thawing.
Make Ahead
You can make this soup up to 2 days ahead and store it covered in the refrigerator before the final cheese and sour cream step. When ready to serve, reheat gently over low heat, then stir in the cheese and sour cream off the heat as directed. The flavor is actually better on day two.
Frequently Asked Questions
How do I make potato soup thick without using flour?
The most effective flour-free method is to blend a larger portion of the cooked potatoes —? roughly half —? back into the broth. The starch from the potatoes does the thickening on its own. You can also stir in a few tablespoons of cream cheese, which adds body and a subtle tang. Cornstarch slurry (1 tablespoon cornstarch whisked with 2 tablespoons cold water) is another quick fix if the soup still seems too thin at the end.
Can I make potato soup in a slow cooker?
Yes. Cook the bacon and sauté the onion and garlic on the stovetop first, then transfer everything except the dairy to the slow cooker. Cook on low for 6–8 hours or high for 3–4 hours until the potatoes are very tender. Blend a portion of the soup, then stir in the cream, cheese, and sour cream on the warm setting right before serving. Do not add the dairy during the full cook —? it will break.
Why did my potato soup turn out grainy or curdled?
Grainy texture almost always means the soup got too hot after the cheese was added, or the cheese was added too fast. Always reduce to low heat before stirring in the cheese, add it in small handfuls, and stir between each addition. Pre-shredded bagged cheese also causes graininess because of its anti-caking starch coating. Freshly shredded cheese from a block melts much more smoothly.
Can I make this potato soup ahead of time?
Yes, and it is actually better the next day. Make the soup up to 2 days in advance and refrigerate it, stopping before you add the cheese, cream, and sour cream. When reheating, warm it gently over low heat, then finish with the dairy off the heat. Stored fully assembled, it keeps for 4 days in the refrigerator. Reheat slowly with a splash of broth to restore consistency.
How do I store leftover potato soup?
Cool the soup completely before transferring to an airtight container. It keeps in the refrigerator for up to 4 days. Do not freeze it —? potato soup separates badly after freezing and the texture becomes grainy and watery once thawed. Reheat on the stovetop over low heat with a splash of chicken broth or milk, stirring often. Do not microwave on high —? it tends to cause the dairy to break.
How do I make this potato soup vegetarian or dairy-free?
For vegetarian: omit the bacon, sauté the onion in 2 tablespoons of olive oil, and use vegetable broth instead of chicken broth. For dairy-free: substitute the butter with olive oil, the whole milk with unsweetened oat milk or full-fat coconut milk, the heavy cream with full-fat coconut cream, and use a dairy-free cheddar-style shredded cheese. Omit the sour cream or use a plain coconut-based yogurt. The soup will be slightly less rich but still hearty.
What potatoes work best for potato soup?
Russet potatoes are the classic choice because their high starch content helps the soup thicken naturally and they break down easily when blended. Yukon Golds are a close second —? they have a buttery, naturally creamy texture and hold their shape a little better, giving the soup more visual body. Avoid waxy potatoes like red potatoes; they stay firm and do not contribute much to thickening.
Can I add other vegetables to this potato soup?
Absolutely. Diced celery and carrots added with the onion give the soup more depth and a classic comfort-food flavor. Cauliflower florets can be cooked alongside the potatoes and blend into the background beautifully, adding nutrition without changing the flavor. Corn stirred in at the end adds sweetness. Roasted garlic in place of raw garlic mellows the bite and adds a deeper, slightly sweet undertone.