Prepare the Potatoes Wash and scrub the russet potatoes thoroughly.
Bake them in a preheated oven at 400°F (200°C) for 45-50 minutes or boil them until tender.
Once cooked, allow them to cool slightly, then peel and dice into bite-sized cubes. Set aside.
Cook the Bacon In a large pot or Dutch oven, cook the bacon strips over medium heat until crispy.
Remove bacon, place on a paper towel to drain, and crumble into small pieces for garnish.
Leave about 2 tablespoons of bacon grease in the pot for extra flavor.
Sauté the Aromatics In the same pot, add butter and let it melt.
Add chopped onion and minced garlic, then sauté for 2-3 minutes until soft and fragrant.
Make the Roux Sprinkle flour over the sautéed onions and whisk continuously for 1-2 minutes to cook out the raw flour taste.
Slowly pour in the chicken broth, stirring constantly to prevent lumps.
Create the Creamy Base Lower the heat and pour in the milk and heavy cream, stirring to combine.
Add paprika, black pepper, thyme, and salt, then let the soup simmer for 5-7 minutes until slightly thickened.
Add the Potatoes & Cheese Stir in the diced baked potatoes and let them cook in the soup for 5 minutes.
Add shredded cheddar cheese, stirring until fully melted and creamy.
For an ultra-smooth texture, use an immersion blender to partially blend the soup (optional).
Final Touch & Serve Stir in sour cream for extra richness.
Taste and adjust seasoning if needed.
Serve hot, garnished with crispy bacon, shredded cheese, and chopped green onions.