The ultimate comfort soup that transforms humble onions into liquid gold. Sweet, caramelized onions swim in rich beef broth, topped with crusty bread and melted Gruyère cheese. It's bistro perfection in a bowl.
In a large heavy pot, melt butter with olive oil over medium heat. Add sliced onions, sugar, and salt. Cook slowly, stirring occasionally, for 30-40 minutes until deep golden brown and caramelized.
Add white wine to the caramelized onions and scrape up any browned bits from the bottom of the pot. Let wine cook off for 2-3 minutes.
Pour in the beef stock, add bay leaves and thyme. Bring to a boil, then reduce heat and simmer for 20 minutes. Season with salt and pepper to taste.
Meanwhile, preheat oven to 450°F (230°C). Toast bread slices until golden brown on both sides. Set aside.
Ladle soup into oven-safe bowls. Float a slice of toasted bread on top of each bowl. Generously sprinkle with Gruyère and Parmesan cheeses.
Place bowls on a baking sheet and broil for 2-4 minutes until cheese is bubbly and golden. Serve immediately while cheese is still melted.
Patience is Key: Don't rush the caramelization process. Slow, steady cooking develops the deep, sweet flavor that makes this soup special.
Cheese Matters: Gruyère is traditional and melts beautifully. Swiss cheese works as a substitute, but avoid pre-shredded cheese.
Bowl Safety: Use oven-safe bowls or crocks. If you don't have them, melt the cheese under the broiler on a baking sheet, then transfer to serving bowls.