Caramelize the Onions: In a large heavy-bottomed pot or Dutch oven, melt the butter over medium heat. Add the vegetable oil, then toss in the sliced onions along with salt, pepper, and sugar. Cook the onions uncovered, stirring occasionally at first. As the onions begin to soften and turn golden, stir more frequently to prevent sticking or burning. The goal is a deep golden brown and richly caramelized onion base, which usually takes about 45 to 55 minutes. If the onions start to stick or brown too fast, lower the heat or splash a little water to deglaze the pan.
Deglaze and Reduce with Wine: Raise the heat to medium-high and pour in the white wine. Use a wooden spoon to scrape up any browned bits from the bottom of the pot. Let the wine simmer and reduce until nearly evaporated and the onions become jammy, about 8 to 10 minutes.
Thicken the Base: Sprinkle the flour evenly over the onions and stir continuously for about one minute to cook the raw flour taste out. This helps thicken the broth later.
Add Broth and Herbs: Pour in the beef broth, then add Worcestershire sauce, dried thyme, and bay leaves. Stir everything to combine, bring the soup to a boil, then reduce to a gentle simmer. Cover the pot and let it cook for 30 minutes, allowing the flavors to meld beautifully.
Prepare the Toasted Bread: While the soup simmers, preheat your oven to 400°F (200°C). Arrange the baguette slices in a single layer on a baking sheet. Bake for about 10 minutes or until they are dry, crisp, and slightly golden around the edges. Set aside.
Finish the Soup Flavor: Once the simmering is complete, remove and discard the bay leaves. Stir in the dry sherry, then taste and adjust seasoning as needed. Add a splash more Worcestershire sauce for depth or a pinch of sugar if the soup needs a touch more sweetness.
Assemble and Broil: Position an oven rack about 6 inches from the broiler and preheat the broiler. Ladle the hot soup into oven-safe crocks or bowls. Top each serving with one or two toasted baguette slices, making sure not to overlap. Sprinkle a generous layer of Gruyère and Parmigiano Reggiano cheeses on top. Place the crocks on a baking sheet and broil until the cheese melts, bubbles, and develops golden edges, approximately 3 to 5 minutes.
Serve Carefully: Remove the crocks from the oven and allow them to cool slightly before serving to avoid burns. Enjoy your rich, comforting French onion soup!