Melt 3 tablespoons of the butter in a 12-inch skillet. Add 1 ½ cups fresh breadcrumbs and stir to coat with the butter. Cook 5-7 minutes, stirring frequently, until the crumbs are golden and smell toasty. Remove from the heat and stir in 1 tablespoon chopped fresh thyme, 1 tablespoon chopped fresh rosemary, 1 teaspoon chopped fresh sage and ½ teaspoon black pepper. Set aside. (Breadcrumbs can be made ahead. Store in a covered container at room temperature up to 3 days.).
Make the bechamel sauce
Melt the remaining 2 tablespoons butter in a saucepan set over medium-high heat. Add 2 tablespoons all-purpose flour and whisk to blend with the butter. Cook 2 minutes, until the flour mixture looks smooth and creamy. Pour in 1 ½ cups whole milk and ½ teaspoon salt.
Cook over medium-high heat until you see small bubbles forming on the outside of the pan. Keep stirring until the sauce starts to thicken — this happens in just a few minutes so be sure to keep your eye on it. Cook 3-5 minutes, or until the mixture has the texture of a thick smoothie. Stir in 1 cup heavy cream and ½ cup of the Parmesan and remove from the heat. Note: The sauce can be made ahead and refrigerated 1-2 days.
Assemble and bake
Boil 1 pound cavatappi pasta in plenty of salted water exactly 6 minutes, or about half the time that your pasta box directions call for. This will ensure that the pasta doesn’t overcook and turn mushy in the oven. Drain.
Add ½ cup of the Fontina cheese to the pasta. Pour the milk mixture over the pasta and stir to coat. Transfer to a 3-quart baking dish. Sprinkle the remaining Fontina and ¼ cup Parmesan cheeses over the pasta and top evenly with the breadcrumbs.
Bake 20-25 minutes, until the crumbs are golden brown and the sauce is bubbling at the edge of the dish. Serve hot.
Notes
Breadcrumbs can be made ahead. Store in a covered container at room temperature up to 3 days.
To make your own fresh breadcrumbs, cut 2 or 3 slices of crusty bread into cubes. Pulse in a food processor until they form coarse crumbs.