Place a large pot or Dutch oven over medium heat. Add the chopped bacon and cook until crisp, about 6 to 8 minutes. Remove the bacon with a slotted spoon and set aside. Leave about 2 tablespoons of bacon fat in the pot.
3 ounces bacon
Add the diced onion to the pot and sauté for 3 to 4 minutes, until soft and translucent. Stir in the minced garlic and cook for 1 minute, until fragrant.
1 medium onion, 3 garlic cloves
Add the diced potatoes and unsalted butter, stirring to coat the potatoes evenly. Pour in the chicken broth and bring the mixture to a boil.
5 medium russet potatoes, 3 tablespoons unsalted butter, 4 cups chicken broth
Reduce the heat to medium-low and simmer for 15 to 20 minutes, or until the potatoes are fork-tender.
Use an immersion blender to blend the soup to your desired consistency, or mash with a potato masher for a chunkier texture.
Stir in the whole milk, heavy cream, shredded cheddar cheese, and sour cream. Season with salt and freshly ground black pepper.
1 cup whole milk, 1 cup heavy cream, 1½ cups shredded cheddar cheese, ½ cup sour cream, Salt and freshly ground black pepper
Simmer over low heat for 5 to 10 minutes, stirring frequently, until the soup is hot and creamy. Do not allow it to boil.
Serve hot, topped with the reserved bacon, extra shredded cheddar cheese, and sliced green onions.
2 tablespoons sliced green onions