A creamy, cheesy potato soup with crispy bacon and fresh chives, perfect for a comforting lunch or dinner. Rich in protein and fiber, this hearty soup is simple to make, easily reheated, and ideal for meal prep or cozy nights at home.
Prepare the Potatoes: Peel each potato carefully, then cut them into uniform ½-inch cubes. Uniform pieces ensure they cook evenly, giving the soup a consistent texture. Place the cubed potatoes in a large bowl of cold water to prevent browning while you prepare the other ingredients.
Cook the Bacon: Heat a large soup pot or Dutch oven over medium heat. Add the chopped bacon and cook until golden and crispy, releasing rich flavor into the pan. Stir occasionally to cook evenly. Once done, transfer the bacon to a paper towel-lined plate to drain excess grease, leaving the bacon fat in the pot for the next step.
Sauté the Onions: In the same pot with the bacon fat, add the finely diced onions. Cook over medium heat for 4 to 5 minutes, stirring frequently, until the onions are soft and translucent but not browned. This slow sauté develops a sweet, savory flavor base for the soup.
Add the Garlic: Reduce heat slightly and add the minced garlic to the onions. Cook for about 1 minute, stirring constantly, until fragrant. Be careful not to burn the garlic, as it can develop a bitter taste.
Create the Roux: Sprinkle the all-purpose flour over the onion and garlic mixture. Whisk continuously for 1 minute until the flour is fully incorporated. This creates a roux that will thicken the soup, giving it a creamy, luscious texture.
Incorporate Liquids: Slowly pour in the chicken broth, whisking constantly to prevent lumps from forming. Follow with the milk, adding it gradually while continuing to whisk. This step ensures a smooth, creamy base for the soup.
Cook the Potatoes: Add the cubed potatoes to the pot and stir to combine. Increase the heat slightly and bring the mixture to a gentle simmer over medium heat. Avoid a rapid boil to prevent the milk from scorching at the bottom.
Simmer Until Tender: Reduce the heat to medium-low and let the soup simmer gently for 15 to 20 minutes. Stir occasionally to prevent sticking, and check the potatoes for tenderness by piercing them with a fork. They should be soft but not falling apart completely.
Mash for Creaminess: Using a potato masher, gently mash a portion of the potatoes in the pot. This releases their natural starches, creating a creamy texture while still leaving some chunks for body. For an ultra-smooth texture, you can use an immersion blender on a few portions.
Add Cheese and Sour Cream: Remove the pot from heat and stir in the shredded sharp cheddar cheese until fully melted. Then, add the sour cream, mixing gently to incorporate it evenly. These ingredients add richness, tang, and extra creaminess to the soup.
Season and Garnish: Stir in the chopped fresh chives and half of the crispy bacon. Taste the soup and season with kosher salt and freshly ground black pepper as needed. Adjust seasonings gradually to avoid over-salting.
Serve and Top: Ladle the soup into bowls and sprinkle the remaining bacon over the top for a crunchy, flavorful garnish. Serve immediately while warm and comforting.
Notes
Use uncooked bacon for the best flavor; pre-cooked bacon may result in less rich taste.
Yukon gold or red potatoes work best for a creamy texture; russet potatoes can make the soup grainy.
For an extra-smooth consistency, use an immersion blender to blend a portion of the potatoes.
Adjust the soup thickness by mashing more potatoes or adding a small amount of potato flakes.
Refrigerate leftover soup in an airtight container for up to 3–4 days; reheat gently on the stovetop or in the microwave.
Fresh chives add a bright flavor; substitute green onions if chives aren’t available.