2 Tbsp unsalted butter
5 medium red onions (about 3 lbs), sliced thin
6 c low-sodium chicken broth
1 3/4 c low-sodium beef broth
1/4 c dry red wine
2 sprigs fresh parsley
1 sprig fresh thyme
1 bay leaf
1 Tbsp balsamic vinegar
1 baguette, cut on the bias into 3/4-inch slices
4 1/2 oz Swiss cheese, sliced 1/16-inch thick
3 oz Asiago cheese, freshly grated (about 1 1/2 c)
FOR THE SOUP
1. Melt the butter in a large stockpot or Dutch oven over medium-high heat; add the sliced onions and 1/2 tsp salt and stir to coat the onions thoroughly with the butter. Cook, stirring frequently, until the onions are reduced and syrupy and the inside of the pot is coated with a very deep brown crust, 30 to 35 minutes. Stir in the chicken and beef broths, red wine, parsley, thyme, and bay leaf, scraping the pot bottom with a wooden spoon to loosen the browned bits, and bring to a simmer. Simmer to blend the flavors, about 20 minutes, and discard the herbs. Stir in the balsamic vinegar and adjust the seasonings with salt and pepper. (The soup can be cooled to room temperature and refrigerated in an airtight container for up to 2 days; return to a simmer before finishing the soup with the bread and cheese).
FOR THE CRUSTS
2. Adjust an oven rack to the upper-middle position; heat the broiler. Set heat-safe soup bowls or crocks on a baking sheet; fill each with about 1 1/2 cups soup. Top each bowl with 2 baguette slices and divide the Swiss cheese slices, placing them in a single layer if possible, on the bread. Sprinkle with about 2 Tbsp grated Asiago and broil until well browned and bubbly, about 10 minutes. Cool 5 minutes and serve.