3 Tablespoons butter
1 Tablespoon olive oil
5 cups thinly sliced yellow onions
1 teaspoon salt
1/4 teaspoon sugar (to help caramelize the onions)
3 Tablespoons flour
8 cups beef stock, at a boil
1 cup dry white wine
1 sprig fresh thyme
Salt and pepper to taste
6-8 slices of toasted French bread rounds
1 cups grated Gruyere cheese
Melt the butter and oil over low heat in a heavy soup pot. Stir in the onions, cover, and sweat until they are tender; this will take about 15 to 25 minutes. Remove the cover, increase heat to medium, and stir in the salt and sugar. Cook 30-40 minutes, stirring often, until the onions have turned an even, very deep, golden brown. Sprinkle in the flour; cook and stir for 3 to 5 minutes.
Off the heat, whisk in the boiling stock. Add the wine and rosemary. Season to taste. Place the pot back on the heat, bring to a simmer. Continue to simmer, partially covered, for 40-60 minutes or more, skim foam from surface as it appears. Taste and correct seasonings. At this point you may set it aside, uncovered, until you are ready to serve.
Turn on oven broiler.
Ladle soup into individual oven-proof bowls. Place a piece of toasted bread on top of sou sprinkle generously with grated cheese and place under broiler until melted and bubbly.