In a Dutch oven or large stock pot over medium heat, add bacon and cook until crispy, about 6 to 8 minutes. Drain on paper towels, then crumble (use this to garnish the soup). Do not drain bacon fat.
To the Dutch oven, add butter and stir until melted. Whisk in flour until smooth and lightly browned, about 1 minute. Whisking constantly, add milk and cook until thickened, about 2 to 3 minutes.
Add potatoes, scallions, and 1/2 teaspoon salt and bring to boil. Reduce heat, cover, and simmer until potatoes are tender, about 15 to 20 minutes. Stir in cheese, sour cream, and salt and pepper to taste (I like 1 teaspoon salt and 1/2 teaspoon pepper).
Adjust the consistency of the soup with additional milk if desired. Serve hot garnished with crumbled bacon, more cheese, and more scallions if desired.
Russet potatoes: Plain old “baking potatoes” are the best for this soup because they have more starch. Some cooks make the soup with frozen shredded hash brown potatoes, too.
Sour cream: Baked potato soup tastes just as good with heavy cream or an equal amount of cream cheese.
Keep warm in the slow cooker: Get the soup ready on the stove, then keep it warm for company in the crockpot. Turn it to LOW while the party happens.
Leftovers: Store covered in the refrigerator for up to 4 days. Reheat in the microwave or on the stove over medium-low heat.
Freezer: Soups with dairy may have a grainy texture and separate when you thaw them out. So, if you want to freeze potato soup, don’t add the dairy. Store it in a freezer-safe container, label, date, and freeze. When you reheat the soup, go ahead and add the milk, cheese, and sour cream.
Ham: Substitute 4 ounces cooked diced ham for the bacon. Skip step 1, adding the ham with the potatoes in step 3.
Velveeta. Substitute 4 ounces (or more) Velveeta for the shredded cheese.