Preheat your oven to 375F. Move the rack to the top third of the oven.
Boil a salted pot of water for the beans. Once it's boiling, add the beans and cook for 3-5 minutes (I do frozen beans for 3 minutes and fresh for 5). Transfer beans to a colander and rinse them under very cold water for a couple of minutes. Once they've cooled, ensure they're drained well and add them to a 9x13 casserole dish.
Add 2 tablespoons of the butter to a skillet over medium-high heat. Stir in the mushrooms, garlic, and Italian seasoning, and sauté them until the water has released and been cooked off (about 6-8 minutes). Transfer the mushrooms to the casserole dish.
In the same skillet, add the remaining 2 tablespoons of butter. Once it's melted, stir in the flour and cook for 1-2 minutes or until the flour smells a bit nutty and darkens a bit. Add in the broth, cream, and Dijon mustard, and whisk until all the flour has dissolved.
Let the sauce gently bubble for about 4-5 minutes or until it's thickened up a bit (should have a similar thickness to Alfredo sauce). Don't let it get too thick - it'll thicken up more in the oven. Season the sauce with a bit of salt & pepper (not too much because the onions are salty).
Pour the sauce into the casserole dish, along with half of the fried onions. Toss everything together and spread it out in an even layer. Top the casserole with the remaining onions and the parmesan cheese. Bake, uncovered, for 20 minutes. Serve warm.