In a large Dutch oven or soup pot, melt the butter over medium heat. Add the sliced onions and garlic to the pot, season with salt and pepper, and cook stirring regularly, until the onions are a deep caramel color, about 30 minutes to an hour.
Dust the onions with the flour and cook, stirring for about five minutes to toast the flour and rid it of its raw taste. Add the white wine and cook, stirring until the wine almost evaporates completely. This happens almost instantly.
Add the herb sachet, the stock and a pinch of salt. Bring to a boil, then lower the heat and let simmer 40 to 60 minutes.
Meanwhile, preheat the oven to 350ºF. Slice the baguette into one-inch thick rounds. Place rounds on a baking sheet, and toast in the oven until lightly golden, about 10 minutes. Remove pan from the oven and let cool.
Preheat the broiler. Taste the soup. Add more salt and pepper if necessary. Remove the sachet and discard. Ladle the soup into individual ovenproof serving bowls. Cover each with two baguette rounds. Top each generously with the grated cheese. Top each with a pinch of chopped parsley. Place bowls on a baking sheet and place under the broiler. Broil until the cheese melts. Serve immediately.