Cauliflower Gratin
- By Jennifer Segal
- November 2, 2025
- 31 Comments
- Leave a Review
This post may contain affiliate links. Read my full disclosure policy.
Whether you’re entertaining for the holidays or cooking for family, this cauliflower gratin is the kind of side that makes any meal feel a little more special.

Creamy, cheesy, and baked until golden and bubbling, this cauliflower gratin is French comfort food at its best. In fact, it was one of the very first dishes I had when I studied abroad in France many eons ago. My host mother served it with a simple roast chicken, and that meal sparked my lifelong love of French food (and, really, my entire culinary career). The tender cauliflower baked in a rich sauce with crisp, thyme-scented breadcrumbs is special enough for company yet easy enough for a cozy weeknight dinner.
This cauliflower gratin recipe is just as perfect alongside Thanksgiving turkey or roast beef tenderloin as it is with simple roast chicken or pan-seared salmon. Or serve it as a vegetarian main with a crisp green salad and some crusty bread for a comforting meal that feels a little special.
What You’ll Need To Make Cauliflower Gratin

- Cauliflower: Cut into florets and cooked just until tender before baking, the cauliflower keeps its shape and texture while soaking up all that rich, cheesy sauce.
- Butter, flour & milk: These form the base of a classic béchamel.
- Salt, pepper & nutmeg: Simple seasonings that bring the sauce to life. Nutmeg adds a subtle warmth that pairs nicely with the cheese.
- Gruyère & Pecorino Romano: The cheeses that make the dish irresistibly rich and flavorful. Gruyère melts into a gooey, slightly nutty layer, while Pecorino adds a salty, sharp finish. (Parmigiano Reggiano can be substituted for the Pecorino, but it doesn’t have quite as much flavor.)
- Jump to the printable recipe for precise measurements
Step-By-Step Instructions
Step 1. Parboil the cauliflower. Bring a large pot of salted water to a boil. Add the cauliflower and cook for about 5 minutes—it should be very al dente since it will finish cooking in the oven. Drain and set aside.
Pro Tip: Make sure to drain well. Cauliflower holds onto water like a sponge, and if you rush this step, it can make the gratin watery. Spreading the florets on a clean dish towel for a few minutes helps wick away extra moisture.


Step 2. Make the béchamel sauce. Melt the butter in a medium saucepan. Whisk in the flour and cook for a minute or two, just until it starts bubbling but hasn’t taken on any color. Pour in the warm milk while whisking constantly so it stays smooth. Bring it to a gentle boil, whisking and scraping the sides of the pan as you go, then lower the heat and let it simmer until thick enough to coat the back of a spoon, 3 to 5 minutes. Whisk in the salt, pepper, nutmeg, Gruyère, and Pecorino (or Parmigiano) until the sauce is silky and smooth.
Pro Tip: Warming the milk helps the sauce blend smoothly and prevents lumps. You don’t want it hot—just pleasantly warm to the touch, like bathwater. Microwave it for 1 minute or warm it gently in a small saucepan.




Step 3. Assemble the gratin. Spread one-third of the sauce over the bottom of a 2-quart or 8-inch square baking dish. Arrange the cauliflower evenly on top, then spoon the remaining sauce over the florets. Sprinkle with the remaining Gruyère.
Pro Tip: Layering sauce underneath as well as on top keeps the cauliflower from drying out. If you want even more flavor, sneak in a thin layer of caramelized onions or sautéed mushrooms before adding the sauce.




Step 4. Make the topping. In a small bowl, toss the panko with the olive oil, the remaining Pecorino Romano (or Parmigiano Reggiano), thyme, and a pinch of salt and pepper. Sprinkle evenly over the cauliflower.


Step 5. Bake and serve. Bake in a 400°F oven for 25 to 30 minutes, until the topping is golden and the sauce is bubbling around the edges. Let cool at least 10 minutes before serving to allow it to set, then enjoy!

More Creamy, Cheesy Vegetable Side dishes You’ll like
Cauliflower Gratin

Ingredients
- 1 medium head cauliflower (about 2½ lbs/1.1kg), cut into medium florets
- 3 tablespoons unsalted butter
- ¼ cup all-purpose flour
- 2 cups whole milk, warmed (see note)
- Salt
- Freshly ground black pepper
- Pinch of ground nutmeg
- 1 cup shredded Gruyère, divided
- ¼ cup grated Pecorino Romano, divided
- ½ cup panko breadcrumbs
- 1 tablespoon extra-virgin olive oil
- 2 teaspoons fresh thyme (or ¾ teaspoon dried)
Instructions
- Preheat the oven to 400°F (205°C) and set an oven rack in the middle position.
- Bring a large pot of well-salted water to a boil—it should taste like the sea. Add the cauliflower and cook for 5 minutes; it should be very al dente at this point, since it will continue cooking in the oven. Drain well and set aside.
- Melt the butter in a medium saucepan over medium heat. Whisk in the flour and cook for 1 to 2 minutes, until bubbling but not browned. Gradually whisk in the warm milk. Bring the mixture to a gentle boil, whisking often and occasionally running a flat whisk or rubber spatula around the edges of the pan to keep the sauce smooth. Reduce the heat and simmer, whisking frequently, until thick enough to coat the back of a spoon, 3 to 5 minutes. Add 1 teaspoon salt, ¼ teaspoon pepper, the nutmeg, ½ cup (60 g) of the Gruyère, and 2 tablespoons of the Pecorino Romano (or Parmigiano Reggiano); whisk until smooth.
- Spread about one-third of the sauce over the bottom of a 2-qt or 8-in (2-L or 20-cm) square baking dish. Arrange the par-cooked cauliflower evenly on top, then spoon the remaining sauce over the florets. Sprinkle with the remaining ½ cup Gruyère.
- In a small bowl, toss the panko with the olive oil, the remaining 2 tablespoons Pecorino Romano (or Parmigiano Reggiano), the thyme, and a pinch of salt and pepper. Sprinkle evenly over the top of the cauliflower.
- Bake, uncovered, for 25 to 30 minutes, until the topping is golden brown and the sauce is bubbling around the edges. Let cool for at least 10 minutes before serving to allow it to set up.
Notes
- Warming the milk helps the sauce blend smoothly and prevents lumps. You don’t want it hot—just pleasantly warm to the touch (100 to 110°F/38° to 43°C), like bathwater. Microwave it for 1 minute or warm it gently in a small saucepan.
- For the best flavor, use good-quality, well-aged cheeses. A true Gruyère AOP (aged 9–12 months) has a rich, nutty taste that really comes through in the gratin, while Pecorino Romano adds a salty, savory kick. Imitation cheeses won’t deliver the same depth of flavor.
- Make-Ahead Instructions: The gratin can be assembled up to 1 day ahead. Prepare the recipe through the step of topping it with the cheese and panko mixture, but don’t bake. Cover tightly and refrigerate. When you’re ready to bake, let it sit at room temperature for 20 to 30 minutes to take the chill off, then bake as directed, adding a few extra minutes if needed to ensure it’s heated through and the top is golden.
Nutrition Information
This website is written and produced for informational purposes only. I am not a certified nutritionist and the nutritional data on this site has not been evaluated or approved by a nutritionist or the Food and Drug Administration. Nutritional information is offered as a courtesy and should not be construed as a guarantee. The data is calculated through an online nutritional calculator, Edamam.com. Although I do my best to provide accurate nutritional information, these figures should be considered estimates only. Varying factors such as product types or brands purchased, natural fluctuations in fresh produce, and the way ingredients are processed change the effective nutritional information in any given recipe. Furthermore, different online calculators provide different results depending on their own nutrition fact sources and algorithms. To obtain the most accurate nutritional information in a given recipe, you should calculate the nutritional information with the actual ingredients used in your recipe, using your preferred nutrition calculator.
See more recipes:
Comments
Add a Comment Cancel reply
This site uses Akismet to reduce spam. Learn how your comment data is processed.




Family dinner winner! So easy and good for you. I opted to steam the cauliflower but may need to add more salt to sauce to offset not parboiling in salted water. Thank you for another amazing recipe!
Absolutely amazing! Got to use my freshly grown thyme!
Thank you for all your wonderful recipes, I can’t even count how many I’ve made .
My daughter now follows you and loves everything too.
Wow! My husband’s favorite vegetable is cauliflower and so I was eager to try this recipe when I saw it. I made it last night alongside your recipe for Pork Tenderloin with Mustard Glaze (another family favorite). I daresay, the cauliflower stole the spot light! I am only disappointed this recipe did not come into my life earlier. I greedily devoured the leftovers for lunch today. Thanks for another great recipe!
This is the first recipe of the many I’ve tried from your website that I didn’t like, and I’m a French food lover. This concoction seemed heavy and bland. My husband, a good cook himself, called it mediocre. Such a surprise. Overall I love your recipes and have told many others about your genius, but to me this recipe is definitely a miss.
Wow excellent. Company worthy. I can see how this is a great base that you can expand on. I.e. add half broccoli and half cauliflower, etc. Delicious. Thank you. Your recipes are incredibly reliable which I appreciate.
We making your cauliflower gratin is it OK to use pre-graded Parmesan cheese such as Costco‘s in the recipe? Thank you for all of your wonderful recipes!
Hi Carrie, Yes that’s perfectly fine but for best results use pre-grated Parmigiano Reggiano (rather than domestic Parmesan).
Wow! The sauce is…magical, and thank goodness because it is the one thing that makes boiling farty smelling cauliflower worth it! The panko topping with thyme and pecorino Romano took it over the edge. You always seem to send recipes that include ingredients I just purchased 🙂 Thank you, Jenn, and thank you France!
Joanna, your first sentence made me laugh so hard that I cried! Thank you for your review…and for the chuckle! 🤣
Hi Jenn,
I have tried and loved so many of your recipes and served many of them to company as well as my family. The most recent being Peruvian chicken… loved by all!
Would it be ok to steam the cauliflower rather than boiling?
Thanks so much!
Sure, Nancy – that’s perfectly fine. Enjoy!
As usual, Jenn, your recipe is spot on! One big change: I use broccoli instead of cauliflower because my dog loves parboiled broccoli stems, so I’m “gifted” with a plethora of broccoli florets (she does not like the florets). I parboil the florets for 30 seconds, drain and lightly squeeze out any water to keep it reasonably crispy after baking. A thin layer of caramelized onions is a great addition. Genius recipe. The dog would like florets cooked this way, but we’ll stick with the healthy, semi-raw option for her LOL.
I have a question with regard to the Nutrition Information. It says 695 mg of sodium. However, your recipe just says “Salt” with no amount listed. So is the sodium amount listed just based on all the other ingredients before I add salt or is it guessing on an approximate amount of additional salt that I might add? Thank you.
Hi Melanie, The amount of salt is specified in the recipe instructions since it’s used twice – once in the boiling water and then again in the sauce.