-
1
In a large wide pot, melt the butter over medium heat.
-
2
Add the onionsto keep them from stewing rather than browning, spread them in as close to a single layer as possible.
-
3
Cook, stirring occasionally, until they are very brown and soft, about 30 minutes; they will need more frequent stirring toward the end.
-
4
Stir in the wine and bring to a boil, scraping the bottom of the pan vigorously with a wooden spoon to get up all of the browned bits.
-
5
Continue scraping while pouring in the beef stock.
-
6
Then pour in the chicken stock.
-
7
Season with the salt and pepper.
-
8
Bring to a boil.
-
9
Lower the heat and simmer for 10 minutes.
-
10
The soup can be made ahead to this point and refrigerated for up to 3 days.
-
11
To gratine, preheat the broiler and, if necessary, return the soup to the simmer.
-
12
Lay 2 slices of toast in the bottom of each ovenproof bowl or crock, or make two layers of bread in a large earthenware casserole.
-
13
If using, mix together the Gruyere and Parmesan.
-
14
Pour the soup over the slices of bread.
-
15
Sprinkle the cheese mixture evenly over the soup.
-
16
Or, if using the mozzarella, lay 4 thin slices over the top of each serving or all the slices over the entire contents of the casserole.
-
17
Place the containers under the broiler for 3 to 4 minutes until bubbling and brown.