Cook the Bacon
In a large pot or Dutch oven, cook diced bacon over medium heat until crispy. Remove bacon and set aside to drain on paper towels, but keep the bacon grease in the pot.
Sauté the Vegetables
Add diced onion to the bacon grease (and celery or mushrooms if using). Sauté over medium heat until vegetables are soft and translucent, about 5-7 minutes.
Add Potatoes and Seasonings
Add the peeled and diced potatoes to the pot along with salt, black pepper, and garlic powder. Stir to coat the potatoes in the bacon grease and seasonings.
Add Liquid and Simmer
Pour in the chicken broth and a splash of milk. Bring everything to a boil over medium heat, then reduce to a simmer. Let it simmer for 30 minutes, or until the potatoes are tender and starting to break down.
Thicken and Serve
If you want a thicker soup, let it sit for a bit longer—the potatoes will naturally thicken it. For a chunkier soup, leave as is. For a creamier version, use an immersion blender to partially blend. Top each bowl with crispy bacon, shredded cheese, sour cream, and green onions.