Classic French Onion Soup

Side Dish

If there’s one dish that wraps you in a warm hug on a chilly day, it’s French onion soup. Picture this: golden, caramelized onions simmered in a rich red wine and beef broth, topped with crusty, garlicky bread and gooey, melted Gruyere. It’s the kind of meal that feels fancy but is surprisingly simple to make at home. Once you try this recipe, you’ll never want the restaurant version again.

Ingredients

1 stick unsalted butter

10 jumbo sweet onions, sliced

6 garlic cloves, minced (plus 1 clove for baguette)

3 bay leaves

1 healthy bunch of fresh thyme, tied with kitchen twine

Kosher salt and freshly ground black pepper

1/2 bottle red wine (merlot or cabernet sauvignon)

3 heaping tablespoons all-purpose flour

2 quarts beef broth

1 baguette, sliced

Olive oil, for drizzling

1/2 pound grated Gruyere cheese

Directions

Melt the butter in a large pot over medium heat. Add the minced garlic and sauté for 1–2 minutes until fragrant, stirring often to avoid burning.

Add the sliced onions, thyme bundle, and bay leaves to the pot. Stir everything together, then let the onions cook down for 25–35 minutes, stirring occasionally. You’re looking for a golden caramel color and a soft, jammy texture.

Pour in the red wine and give everything a good stir, scraping up the flavorful bits stuck to the bottom of the pot. Simmer until the wine reduces by half, about 8–10 minutes.

Sprinkle the flour over the onions and stir until it’s fully incorporated. Cook for another 2–3 minutes to get rid of the raw flour taste. Slowly add the beef broth, stirring constantly to create a smooth, rich base. Bring the soup to a gentle simmer and let it cook for 20–25 minutes. Remove the thyme bundle and bay leaves before serving.

Preheat your oven to 400°F. Arrange the baguette slices on a baking sheet. Drizzle each slice with olive oil and rub the surface with a cut garlic clove. Toast in the oven for 5–7 minutes, or until golden and crisp.

Ladle the soup into oven-safe bowls, leaving some room at the top. Place a toasted baguette slice on each bowl and generously top with Gruyere cheese. Arrange the bowls on a baking sheet and broil for 3–5 minutes, keeping a close eye, until the cheese is melted and bubbly.

Carefully remove the bowls from the broiler and let them cool slightly. Dive in while the soup is piping hot, and savor every cheesy, garlicky, and savory bite.