Preheat oven to 350˚F.
Lightly grease a 9x13 baking dish with butter and set aside.
Cook diced bacon in a dutch oven or large skillet set over medium heat.
Using a slotted spoon, remove cooked bacon from the pot and set bacon aside.
To the bacon grease, add the brussel sprouts and thawed green beans; season with salt and pepper, and cook for about 6 to 8 minutes, or until tender.
Remove vegetables from the pot and transfer to the baking dish; set aside.
Add 2 tablespoons butter to the pot and set over medium-high heat.
Add shallots and mushrooms; cook and stir often for about 8 minutes, or until mushrooms are browned and shallots are caramelized.
Remove mushroom and shallots from the pot and add them to the baking dish. Set aside.
To the same skillet/pot add remaining butter; melt it over medium high heat.
Whisk in the flour and cook for 1 minute while constantly whisking.
Whisk in milk until smooth.
Continue to whisk for 3 to 4 minutes, or until mixture is thickened and bubbly.
Remove from heat.
Add parmesan cheese, salt, and pepper and whisk until well combined.
Pour sauce over the green beans mixture and stir until completely combined.
Transfer baking dish to the oven and bake, uncovered, for 15 minutes.
Remove from oven and sprinkle with previously cooked bacon pieces and the breadcrumbs OR fried onions.
Return to oven and continue to bake for 15 minutes, or until top is golden brown.
Remove from oven.
Let stand 10 minutes.
Taste for salt and pepper; adjust accordingly.