- Melt the butter with the oil in a large heavy-based pan.
- Add the onions and fry with the lid on for 10 minutes until soft. Sprinkle in the sugar and cook for 20 minutes more, stirring frequently, until caramelised.
- After 15 minutes add the garlic. Sprinkle in the flour and stir well. Increase the heat and keep stirring as you gradually add the wine, followed by the hot stock. Lower the heat, cover and simmer for a further 15-20 minutes.
- To serve, turn on the grill, and toast the bread. Ladle the soup into heatproof bowls. Put a slice or two of toast on top of the bowls of soup, and pile on the cheese. Grill until melted.