Serves 10 people


For the Soup

5 cups thinly sliced yellow onions
3 tablespoons unsalted butter
1 tablespoon olive oil
1 teaspoon table salt, plus additional to taste
¼  teaspoon granulated sugar (helps the onions to brown)
3 tablespoons all-purpose flour
2 quarts beef stock
*for vegetarian version sub with mushroom stock!
1/2 cup dry white wine or dry white vermouth
Freshly ground black pepper
3 tablespoons cognac or brandy

For the Garnish

1 tablespoon grated raw onion
1 to 2 cups grated Swiss Gruyere or a mixture of Swiss and Parmesan cheese
1 tablespoon butter, melted
12 to 16 1-inch thick rounds French bread, toasted until hard

Special Equipment

Espresso cups (or small ramekins)


For the Soup

Melt the butter and oil together in the bottom of a 4- to 5-quart saucepan or Dutch oven over moderately low heat. Add the onions, toss to coat them in oil and cover the pot.  Reduce the heat to real low and let them slowly steep for 15 minutes.

After 15 minutes, uncover the pot, raise the heat slightly and stir in the salt and sugar. Cook onions, stirring frequently, for 30 minutes until they have turned an even, deep golden brown.

After the onions are fully caramelized, sprinkle them with flour and cook, stirring, for 3 minutes. Add the wine, then stock, a little at a time, stirring between additions. Season to taste with salt and pepper.
Bring to a simmer and simmer partially covered for 30 more minutes, skimming if needed. Correct seasonings if needed but go easy on the salt as the cheese will add a bit more saltiness. Stir in the cognac.
Set aside until ready

To Serve

Bring the soup back to a boil and divide among the individual cups/bowls.  To each vessel, add 1/2 teaspoon grated raw onion and a tablespoon of grated cheese.  Stir to combine.  Dab your croutons with a tiny bit of butter and lay on top of sheet pan.  Mound grated cheese on top.  At this point you can bake in the oven or brulee with a torch.
Place bread and cheese on top of soup and serve with a small demi tass spoon.

[print-button target=’div#print’]