Cook the Bacon: Start by cooking the bacon in a large pot over medium heat. Stir occasionally, allowing the bacon to become crisp and golden. Once done, remove the bacon with a slotted spoon and set it aside on a paper towel-lined plate to drain.
Brown the Ground Beef: In the same pot, add the ground beef to the remaining bacon fat. Cook it over medium-high heat until browned, breaking it apart with a spoon as it cooks. Add the diced onions and sliced mushrooms. Cook for another 5-7 minutes, or until the onions are softened and translucent, and the mushrooms have released their moisture.
Add Beef Broth: Pour in the beef broth, stirring to combine with the beef and vegetable mixture. Bring the soup to a simmer, letting it cook for about 10 minutes.
Stir in the Cream and Swiss Cheese: Lower the heat to medium and stir in the heavy cream. Let it warm through before adding the shredded Swiss cheese. Stir continuously until the cheese has melted completely into the soup.
Season to Taste: Add salt and pepper to taste, adjusting the seasoning according to your preference.
Serve and Garnish: Ladle the soup into bowls and garnish with the crispy bacon and a sprinkle of fresh green onions. Serve hot.