Prepare the topping: in a small skillet, heat the butter over medium heat. Add the breadcrumbs and cook for 3-5 minutes, stirring frequently, until golden brown. Season with salt and pepper to taste. Set aside.
Prepare the pasta: heat the butter in a large saucepan on medium heat. Add the garlic and cook until fragrant, 30-60 seconds, then add the caramelized onions and stir to combine.
Add the broth, water, wine and thyme, then bring the mixture to a boil.
Add the pasta and cook, stirring frequently, until the pasta is al dente and the liquid is mostly absorbed, 11-13 minutes.
Remove the pan from the heat and stir in the cream and gruyere. Season with salt and pepper to taste.
Top each serving of pasta with gruyere and 2 tablespoons of breadcrumb topping.
Notes
Prep time does not include caramelizing onions. I recommend doing this advance; follow my post on How to Caramelize Onions.