Preheat oven to 400 degrees.
To make the topping, blend the onions and cheese together in a small bowl; set aside.
Place the green beans in a large mixing bowl. If you are using frozen beans, just put them in frozen. If you are using fresh, make sure you have steamed them to a tender crisp doneness and cooled them a bit before putting them in the bowl.
In a large skillet over a medium–high heat, add the butter and touch of oil (the oil keeps the butter from burning). Add the mushrooms, garlic, salt and pepper, and cook until mushrooms are done. It’ll take about 5 minutes. Turn down the heat, if necessary, and keep the mushrooms moving periodically. Remove the mushrooms from the heat and set aside.
Now add the remaining butter to the pan and add the broth and wine, bringing it to a simmer. In the meantime, toss the cheese with the flour. Add this cheese mixture to the simmering broth, whisking together until well blended. As the sauce starts to thicken, slowly add the cream, whisking all the while. Allow to simmer about 10 minutes on low. Be careful—too hard a boil and the sauce will separate.
Now throw the sauce over the green beans and mix with mushrooms, and toss together to blend. Place the sauced-up beans in a 9-inch by 13-inch baking dish. Sprinkle with your topping and place in the middle of your preheated oven, cooking for about 15 minutes or until all is nice and hot and beans are thoroughly cooked through.