Melt butter over med/low heat in heavy stock pot.
Add onions and cook, stirring often, until soft and caramelized, for approx. 30-40 minutes.
Add garlic, bay leaves, salt, and pepper and continue to cook for another 10-15 minutes.
Stir in flour and cook for 10 minutes.
Remove from heat, stir in wine.
Place pot back over med heat, add beef & chicken stock, and worcestershire sauce. Bring to low boil, then reduce to simmer.
Once soup is simmering, slice bread into 3/4" slices and place on sheet pan. Bake for 10-15 minutes, turning over to toast both sides.
Grate cheese and set aside.
Ladle soup into broiler proof bowls and top with toasted bread slice. Top with a mound of grated cheese and place under broiler until cheese is melted and begins to brown.
Use caution when removing hot bowls from broiler.