In a heavy-bottomed pot, heat the butter and olive oil over medium heat.
Add the thinly sliced onions, salt, and sugar. Stir to coat the onions.
Cook the onions slowly, stirring occasionally, for about 30 minutes until they are caramelized and golden brown.
Add the minced garlic and sauté for another 1-2 minutes until fragrant.
Pour in the white wine, scraping the bottom of the pot to deglaze. Let it simmer for about 5 minutes until the wine reduces by half.
Add the beef broth, thyme, and bay leaf to the pot. Bring to a gentle boil, then reduce the heat and let it simmer for about 15 minutes.
Taste and adjust seasoning with salt and freshly ground black pepper as needed.
Preheat the broiler in your oven.
Place the toasted French bread slices on top of the soup in the oven-safe bowls and generously top them with the grated cheese.
Place the bowls under the broiler for 3-5 minutes or until the cheese is bubbly and golden brown. Keep a close watch to avoid burning.
Carefully remove the bowls from the oven and let them cool for a minute before serving.