01 - Preheat oven to 375°F. Grease a 9x13 inch baking dish with butter.
02 - Bring large pot of salted water to a boil. Add potato slices and cauliflower florets and cook for 5 minutes until just tender. Drain well and set aside.
03 - Melt 2 tablespoons unsalted butter in a medium saucepan over medium heat. Add onion and garlic, sauté until soft, about 3 minutes.
04 - Stir in 2 tablespoons all-purpose flour and cook for 1 minute, forming a roux.
05 - Gradually whisk in 1 cup whole milk and 1 cup heavy cream. Bring to a gentle simmer, whisking constantly until thickened, about 4 to 5 minutes.
06 - Remove from heat. Stir in 1 ½ cups Gruyère, ⅓ cup Parmesan, ½ teaspoon ground nutmeg, salt, and black pepper until cheese is melted and sauce is smooth.
07 - Layer half of the potatoes and cauliflower in the baking dish. Pour over half of the cheese sauce. Repeat with remaining vegetables and sauce.
08 - Sprinkle remaining ½ cup Parmesan over top. If desired, combine breadcrumbs with 1 tablespoon melted butter and scatter evenly over the surface.
09 - Bake for 40 to 45 minutes until golden and bubbling. Allow to rest for 10 minutes before serving.