Preheat oven to 400°F.
Wash and dry the potatoes.
Place potatoes on parchment paper lined baking sheet and prick each potato several times with a fork.
Bake the potatoes until tender, about 1 hour. Remove potatoes from oven, let cool slightly, and then peel and mash.
In a Dutch oven or soup pot, melt the butter over medium heat. Add the chopped onions and cook for about 4 to 5 minutes or until softened, frequently stirring, then add the minced garlic and cook for an additional minute.
Whisk in the flour until smooth. Reduce heat to medium-low and continue whisking.
Slowly whisk in the milk and half-and-half. Keep whisking until smooth.
Gradually add the broth while whisking. Season with salt and pepper.
Add in the mashed potatoes and increase the heat to high. Just before the soup starts to boil, reduce the heat to medium-low and let the potato soup simmer for 10 minutes.
Remove from the heat and blend the soup in a blender to a smooth and creamy texture. You can use an immersion blender or a high powered blender to blend the soup.
Transfer the soup back to the pot and stir in 1 cup shredded cheddar cheese; continue to stir until completely melted.
Serve the soup hot, in individual bowls, topped with plenty of additional cheese, bacon, green onions, and sour cream.