Melt butter in a large dutch oven over medium-high heat.
Once melted, add in sliced onions and salt. Stir, cover and cook for 5 minutes undisturbed.
Then uncover, reduce heat to medium-low and cook 40 minutes to 1 hour, stirring every 5 minutes. I set a timer and only stir when it goes off.
When the onions are caramelized, add in minced garlic and thyme. Stir and cook 1 to 2 minutes.
Add in paprika and sprinkle in flour, stir and cook 2 to 3 minutes.
Pour in the beer, scraping the bottom of the pot to pick up any browned bits.
Then pour in beef stock and drop in bay leaves. Bring soup to a boil then reduce to medium-low to low heat and simmer for 45 minutes.
Meanwhile, preheat oven to 400° and spray a rimmed baking sheet with olive oil.
Place sliced baguette on prepared baking sheet, spray or drizzle with olive oil. Bake 10 minutes or until golden.
Place oven-safe soup bowls on a rimmed metal baking sheet. Ladle soup into bowls and top with 2 slices of baguette and top with lots of smoked gruyere.
Use oven mitts to move oven rack to the second rung in your oven and preheat broiler to high.
Broil soup for 3 to 4 minutes or until cheese is golden brown and bubbly. Remove and let stand 5 minutes before serving.
Serve garnished with a few short thyme sprigs