Rinse and dry brussels sprouts. Trim the ends and cut sprouts in half. Bring a large pot of salted water to a boil. Blanch brussels sprouts for 5 minutes, then immediately drain and plunge into a large bowl of ice water. Drain and dry with paper towels.
Saute the mushrooms and thyme in 4 tbsp. of the butter until very dark and tender, about 12-15 minutes. Remove with a slotted spoon, discard the thyme and place onto a separate plate. Season with salt and pepper.
In the same pan, add the remaining 2 tbsp. of butter. Melt the butter over medium heat. Add the flour, garlic and salt. Whisk constantly until it starts to bubble. Whisk in the milk and half-and-half. Cook, whisking, until thickened.
Place mushrooms and brussels sprouts into a 2-quart baking dish and pour sauce over top. Cover with foil. Bake for 20 minutes or until sauce is bubbly. Uncover and continue to bake another 20 minutes or until the top is browned. Top with onions and bake another 2-3 minutes. Serve immediately.