On a stovetop in a Dutch oven or its equivalent, cook the onions, thyme, bay leaf and salt in the unsalted butter over moderate heat uncovered.
Stir often until onions are very soft and translucent, about 1 hour and 15 minutes. Cook slowly, have patience.
Pour in the Cognac and cook, stirring until the onions absorb the liquid, about 2 minutes.
Stir in the broth/stock and pepper. Simmer, uncovered, stirring occasionally, for about 1 hour. You want to reduce the liquid by a third and have tender onions.
Nearing the end of the soup's cooking on the stovetop, place the oven rack in the middle position and preheat the oven to the broiler setting.
Slice the baguette into 1 inch slices. Slice the clove of garlic in half and rub garlic on each slice. (optional: Then chop into large cubes).
Preheat oven to broil. Place soup crocks on a lined baking sheet
Once the soup has finished simmering, remove the bay leaf and thyme, and discard. Divide the soup into the soup crocks, then place 5-7 croutons (or 2-3 slices of baguette (depending upon the size) on top of the crocks filled with soup. Place 2 slices of Gruyère, Comte or Emmental on top of each crock (letting the cheese go over the sides). Then sprinkle with 1-2 teaspoons of Parmigiano-Reggiano.
Broil for only 1-3 minutes (no longer or the bread and cheese will burn rather than brown). Remove when cheese is melted and bubbly.
Note: In my pictures, I first did not dice the baguette slices and found it hard to eat with just a spoon as the bread needed to be cut. Upon enjoying the soup on the second day, I decided to dice the slices as shared in the instructions and found it much easier to eat as the bread was already bite size.
Note: The soup can be made at least three days in advance, refrigerated and then brought back to temperature on the stovetop when you are ready to serve. The croutons as well can be made ahead of time.