2 large bunches broccoli, roughly chopped (about 12 cups)
4 Tbsp (1/2 stick) butter
1/4 cup all-purpose flour
2 cups whole milk
2 cups grated Gruyere (8 ounces)
Heat oven to 375F. Fill a large saucepan with 1 inch of water and fit with a steamer basket (or fill a large pot with 1/2 inch of water). Bring to a simmer. Place the broccoli in the steamer basket, cover, and steam until just tender, 3 to 4 minutes; transfer to a large bowl.
Melt the butter in a medium saucepan over medium heat. Add the flour and cook, stirring, for 2 minutes (do not let it darken). Whisk in the milk and simmer until slightly thickened, 3 to 4 minutes. Remove from heat and stir in 1 cup of the cheese, 1/2 tsp salt and 1/4 tsp pepper. Toss with the broccoli.
Trasnfer the broccoli mixture to a shallow 3-quart baking dish and sprinkle with the remaining cup of cheese. Bake until bubbling and golden brown, 35-40 minutes. Let sit 10 minutes before serving.