Ingredients

4 tablespoons unsalted butter, cut into tablespoon-sized pats

1 tablespoon extra-virgin olive oil

2 pounds yellow onions, cut in half lengthwise and sliced 1/4-inch thick

1 teaspoon sugar

1 tablespoon all-purpose flour

1/2 cup dry sherry

3 1/2 cups homemade beef stock

2 teaspoons chopped fresh thyme

Coarse salt and freshly ground black pepper

1 small French baguette, sliced on a bias into 3/4-inch thick pieces

12 ounces medium-hard cheese, such as a combination of Gruyere, Fontina, or Swiss, grated on the large holes of a box grater (about 1 1/2 cups)

Preparation

Melt butter and olive oil in a large Dutch oven or heavy pot over medium heat. Add onions. Spread them out in as thin a layer as possible. Sprinkle with sugar, and cook, stirring as needed to keep onions from sticking, until they are melting and soft, golden brown, and beginning to caramelize, about 1 hour.

Sprinkle flour over onions, and stir to coat. Add sherry, stock, and thyme, and bring to a simmer. Cook, partially covered, for about 30 minutes, to allow the flavors to combine. Season with salt and pepper to taste.

Meanwhile, preheat broiler. Arrange bread on a rimmed baking sheet and broil until deep-golden brown on both sides, about 1 to 2 minutes per side; set aside.

Ladle 1 cup hot soup into four 13-ounce ramekins or ovenproof bowls. Arrange the bowls on a rimmed baked sheet. Place 2 slices of toasted bread over each bowl of soup to cover the surface of the soup completely. Sprinkle 3 ounces grated cheese over bread in each bowl, and place under broiler until cheese is melted and crusty brown around the edges. Watch carefully that bread doesn’t burn. Serve immediately.