The piece I wrote for RecipeSpinoff that November was about rosół — about how soup had pulled my father back from the edge of something I don’t want to name — and soup was still on my mind when I planned every container going out that week. Mrs. Wojcik wasn’t coming to the table, but I could still make sure something warm arrived at her door, and this potato soup — rich, filling, built for being reheated in a small apartment kitchen — was exactly the kind of thing that travels well and lands like a hug. After a year of loss and distance and cracked windows and hand sanitizer, I needed a recipe that felt like abundance, and this one delivers every single time.
The Best Potato Soup
Prep Time: 20 minutes | Cook Time: 40 minutes | Total Time: 1 hour | Servings: 8
Ingredients
- 6 slices thick-cut bacon, chopped
- 1 medium yellow onion, diced
- 4 cloves garlic, minced
- 3 tablespoons unsalted butter
- 1/4 cup all-purpose flour
- 4 cups chicken broth
- 2 cups whole milk
- 1 cup heavy cream
- 2 1/2 pounds russet potatoes, peeled and cut into 3/4-inch cubes
- 1 teaspoon kosher salt, plus more to taste
- 1/2 teaspoon black pepper
- 1/2 teaspoon smoked paprika
- 1 1/2 cups shredded sharp cheddar cheese
- 1/2 cup sour cream
- 3 green onions, thinly sliced (for serving)
- Extra shredded cheddar and bacon bits (for serving)
Instructions
- Cook the bacon. In a large Dutch oven or heavy-bottomed pot over medium heat, cook the chopped bacon until crisp, about 8–10 minutes. Transfer to a paper towel—lined plate and set aside. Leave about 2 tablespoons of drippings in the pot.
- Soften the aromatics. Add the butter to the bacon drippings over medium heat. Once melted, add the diced onion and cook until softened and translucent, about 5 minutes. Add the garlic and cook 1 minute more, stirring frequently.
- Build the roux. Sprinkle the flour over the onion mixture and stir constantly for 1–2 minutes to cook out the raw flour taste. The mixture will look paste-like — that’s exactly right.
- Add the liquids. Slowly pour in the chicken broth, whisking as you go to prevent lumps. Add the milk and heavy cream and bring the mixture to a gentle simmer over medium-high heat.
- Add the potatoes. Stir in the cubed potatoes, salt, pepper, and smoked paprika. Reduce heat to medium-low, cover partially, and cook until the potatoes are completely tender when pierced with a fork, about 20–25 minutes.
- Mash for texture. Use a potato masher or the back of a wooden spoon to roughly mash about one-third of the potatoes directly in the pot. This thickens the broth while keeping plenty of chunky potato pieces throughout.
- Finish with cheese and sour cream. Remove the pot from heat. Stir in the shredded cheddar a handful at a time until fully melted, then stir in the sour cream until smooth and incorporated. Taste and adjust salt as needed.
- Serve or pack. Ladle into bowls and top with reserved bacon, extra cheddar, and sliced green onions. For delivery containers, pack toppings separately so they stay crisp on the receiving end.
Nutrition (per serving)
Calories: 430 | Protein: 14g | Fat: 27g | Carbs: 34g | Fiber: 3g | Sodium: 720mg