Melt the butter in a large saucepan.
1 stick unsalted butter
Reduce the heat to medium low. Add onions to the saucepan once the butter is melted, along with the garlic, thyme, and bay leaves.
4 large onions, 2 cloves garlic, 2 whole bay leaves, 2 sprigs fresh thyme
Caramelize the onions, stirring every 5-7 minutes, until they're golden brown. This takes about 45 minutes.
Increase to medium high heat. Add in the wine and let it simmer for 5 minutes until mostly evaporated. Then whisk in the flour and stir until fully combined. Finally, add in the beef broth, salt and pepper to taste, and let the soup simmer while you prepare the bread.
½ cup red wine, 6 cups low-sodium beef broth, 2 tablespoon all purpose flour, salt and pepper to taste
Heat the oven to broil and place slices of Italian bread onto a baking sheet. Top with shredded Gruyere cheese and broil for 3-4 minutes until melty.
½ loaf Italian bread, ½ cup Gruyere cheese
Ladle the soup into bowls and top with the slices of cheesy bread.