Melt the butter and a splash of cooking oil in a large, heavy-based saucepan.
Add the onions sauté over a low heat for approximately 30 minutes, stirring occasionally, until completely caramelised and jammy.
Add the flour to the pan, increase the heat to medium-high and stir well. Cook until the smell of raw flour dissipates and the flour is incorporated with the onions.
Slowly add the wine and sherry to deglaze the pan. Continue to cook for another 2-3 minutes until the liquid has reduced by around two-thirds.
Pour in the beef stock and bring to a boil. Season generously with pepper. Simmer for 20 mins, stirring occasionally. Taste for seasoning and add salt if need be.
While the soup is cooking, prepare your croutons. Place the baguette slices under a grill for 1 minute, or until lightly golden. Peel the garlic clove, then rub over the lightly toasted baguette slices. Top each slice with a generous handful of cheese and place under the grill for another 2 minutes, or until melted and lightly charred.
To serve, portion the soup into bowls, then top with the cheese croutons.
Typical recipes us just yellow, but a mixture can be used. For something different, try a combination yellow onions, white onions, Spanish onions, shallots, and a red onion.
White wine can be substituted for sherry, port, Madeira, brandy, or even a mixture of each.
Instead of using croutons, you can transfer the soup to bowls then top with cheese before finishing under the grill for a minute or two, until golden and melted.
French onion soup is traditionally served in a deep bowl, but if you’re keen on having more croutons, serve the soup in a shallow bowl with greater surface area.