Roasted Brussels sprouts are tossed in a béchamel sauce with pancetta and topped with gruyere and Parmesan. This rich side is perfect for the holidays!
jump toRECIPE
This post may contain affiliate links, which means that I make a small commission off items you purchase at no additional cost to you. Please read my policy page.
This Brussels sprouts gratin is the ultimate side dish to win over even the biggest sprout skeptics. The sprouts are first roasted until tender and lightly charred, then baked in a creamy béchamel sauce with crispy pancetta, shallots, and a touch of lemon zest. A bubbling topping of Gruyère and Parmesan adds a golden, cheesy finish that makes this dish irresistibly rich and comforting. Forget the over-boiled Brussels sprouts of the past – this gratin proves they can be decadent, flavorful, and holiday-worthy. Craving more dishes like this? My fried kimchi Brussels sprouts and balsamic sriracha roasted Brussels sprouts recipes are right up your alley.
Why You’ll Love Brussels Sprouts Gratin
Roasted for maximum flavor. Roasting the Brussels sprouts first ensures they’re tender with caramelized edges before baking in the creamy sauce.
Rich and cheesy comfort. A silky béchamel combined with Gruyère and Parmesan creates a decadent, golden topping.
Perfect for holidays. Elegant yet simple, this dish is an ideal addition to Thanksgiving, Christmas, or any special gathering.
Key Ingredients in This Recipe
Brussels sprouts – Look for tight heats of Brussels sprouts with 1-2″ in diameter. Remove any yellowing leaves from the outside of the sprouts. I cut them in half before roasting them so the cut side caramelizes slightly. The Brussels sprouts are first roasted before they are added to the béchamel sauce and topped with cheese. I always recommend roasting Brussels sprouts a little longer than you think you need to – they should look slightly caramelized on the bottom.
Gruyère – Gruyère is a hard cheese with a nutty, sweet flavor from Switzerland. The fact that it melts well (due to a high water to oil ratio) mixed with t’s distinct flavor makes it the perfect addition to anything from sandwiches to mac and cheese or fondue. If you can’t find Gruyère, I recommend substituting with another Swiss cheese like Emmental.
Parmesan – Parmesan-Reggiano is definitely one of my favorite cheeses. It’s a hard cow’s milk cheese aged for different lengths of time. I’d recommend buying a roughly cut piece of wrapped cheese from the grocery store – it’s typically a higher quality cheese.
A full ingredient list with exact amounts can be found in the recipe card below.
How to Make this Recipe in Advance
Assemble the gratin in advance then cover and refrigerate or freeze until ready to serve. Cook as directed below.
To Make This Recipe Dairy Free
Hard cheeses like Gruyère and Emmentaler as well as Parmesan don’t contain any lactose. It’s actually broken down in the production process so those who have a lactose intolerance can eat those cheeses. To make the recipe dairy free, substitute with a lactose free milk or non-dairy alternative.
Swaps and Substitutions
Try swapping the pancetta with diced bacon if needed.
A gratin like this is great with a hearty green like kale or collard greens. Simply sauté and use in place of the Brussels sprouts in this recipe.
How to Make This Brussels Sprout Gratin Recipe (Step-by-step)
Step 1:Roast Brussels sprouts. Preheat oven to 400ºF (200ºC). Cut the Brussels in half then toss in olive oil, salt and pepper and spread in an even layer, cut side down on an aluminum foil-lined baking sheet. Roast until the Brussels sprouts are soft on the inside and lightly browned, about 20 minutes.
Step 2: Cook pancetta. In a medium saucepan over medium heat, cook pancetta until fat has rendered and it is crispy, about 10 minutes. Remove with a slotted spoon to a small bowl, reserving as much fat as possible in the pan.
Step 3:Sauté shallots. Add the butter and melt. Add the shallots and sauté until tender, about 6 minutes.
Step 4: Make roux. Add the flour, whisking to combine. Let the roux cook for a minute until a pale golden brown. Add the milk and thyme, whisking to incorporate.
Step 5: Make béchamel. Bring the mixture to a boil then lower the heat to medium-low. Cook, whisking occasionally, until the sauce coats the back of a spoon, about 10 minutes. Season with salt and discard thyme sprig. Remove the béchamel sauce from heat and set aside.
Step 6:Assemble gratin. In a large bowl stir together the Brussels sprouts, pancetta, béchamel and lemon zest until combined. Pour the mixture into an 8-inch cast iron baking dish. Lower oven to 375ºF (190ºC).
Step 7: Bake and serve. Top with the Gruyère and Parmesan cheese and bake until the mixture is browned and bubbling, about 30 minutes. Let cool slightly and serve.
FAQ – Frequently Asked Questions
Can Brussels sprouts gratin be made in advance?
Yes! Assemble the gratin in advance then cover and refrigerate or freeze until ready to serve. Cook as directed below.
Can Brussels sprouts gratin be made dairy free?
Yes! Hard cheeses like Gruyère and Emmentaler as well as Parmesan don’t contain any lactose. It’s actually broken down in the production process so those who have a lactose intolerance can eat those cheeses. To make the recipe dairy free, substitute with a lactose free milk or non-dairy alternative.
What cheeses work best for this recipe?
Gruyère adds a nutty richness and Parmesan gives a sharp, salty kick. If you don’t have Gruyère, Swiss, Fontina, or sharp white cheddar are great substitutes.
Can I make this without pancetta?
Absolutely. Leave it out for a vegetarian version, or substitute with crispy bacon if you prefer.
How do I reheat leftovers?
Reheat in a 350°F (180ºC) oven until warmed through and bubbly, about 15–20 minutes. Avoid the microwave if possible, since it can make the sauce separate.
Can I use frozen Brussels sprouts?
Fresh Brussels sprouts give the best texture, but you can use frozen if needed. Be sure to thaw and pat them dry well to prevent excess water from thinning the sauce.
Other Recipes to Try
If you enjoy this Brussels sprouts gratin recipe, I recommend checking out some of these
Preheat oven to 400ºF (200ºC). Cut the Brussels in half then toss in olive oil, salt and pepper and spread in an even layer, cut side down on an aluminum foil-lined baking sheet. Roast until the Brussels sprouts are soft on the inside and lightly browned, about 20 minutes.
In a medium saucepan over medium heat, cook pancetta until fat has rendered and it is crispy, about 10 minutes. Remove with a slotted spoon to a small bowl, reserving as much fat as possible in the pan.
Add the butter and melt. Add the shallots and sauté until tender, about 6 minutes.
Add the flour, whisking to combine. Let the roux cook for a minute until a pale golden brown. Add the milk and thyme, whisking to incorporate.
Bring the mixture to a boil then lower the heat to medium-low. Cook, whisking occasionally, until the sauce coats the back of a spoon, about 10 minutes. Season with salt and discard thyme sprig. Remove the béchamel sauce from heat and set aside.
In a large bowl stir together the Brussels sprouts, pancetta, béchamel and lemon zest until combined. Pour the mixture into an 8-inch cast iron baking dish. Lower oven to 375ºF (190ºC).
Top with the Gruyère and Parmesan cheese and bake until the mixture is browned and bubbling, about 30 minutes.
Rate + Review
WHAT DID YOU THINK OF THIS RECIPE?