Start to finish: 1 hour
2 ounces dried porcini or similar mushrooms
1 cup boiling water
5 tablespoons butter, divided
3 large sweet onions, thinly sliced
1/4 cup white wine
2 leeks, white parts only, cleaned and sliced
2 shallots, chopped
2 cloves garlic, minced
2 tablespoons chopped fresh thyme
2 tablespoons chopped fresh rosemary
3 tablespoons all-purpose flour
2 cups chicken broth
2 cups beef broth
Salt and ground black pepper, to taste
4 slices stale crusty bread
4 slices fontina cheese
Fresh chives for garnish
Chop fresh chives, for garnish. Cut or break the dried mushrooms into small pieces and place in heat-safe bowl. Pour the boiling water over the mushroom pieces and set aside.
In a large saucepan over medium heat, melt 3 tablespoons of the butter. Add the onions and cook slowly until well-browned, stirring regularly, about 15 to 20 minutes. If the onions begin to get too brown, add a couple of teaspoons of water.
When the onions are browned and caramelized, add the wine and stir to deglaze the pan. Add the leeks, shallots, garlic, thyme, rosemary and remaining 2 tablespoons of butter.
Increase the heat to medium-high and cook until the leeks are tender, about 6 to 8 minutes. Add the flour and stir to coat everything. Pour in the chicken and beef broths, then stir well and bring to a boil. Add the steeped mushrooms (including the liquid), then reduce heat to simmer for 10 minutes. Season with salt and pepper.
Heat the broiler.
Ladle the soup into 4 oven-safe crocks. Top each with a slice of the stale bread, then a slice of the cheese. Arrange the crocks on a rimmed baking sheet, then place under the broiler and cook until the cheese is melted and begins to brown, 1 to 2 minutes. Serve topped with fresh chives.