Heat oven to 375F.
Steam cauliflower until crisp tender, 5-7 minutes. Blot the cauliflower with a towel to remove any excess liquid and transfer it to a large bowl.
While cauliflower is steaming, begin making cheese sauce.
In a large saucepan, melt the butter over medium heat. Add a little salt and saute the garlic for 30 seconds.
Add 2 tablespoons of flour and whisk with a flat whisk for 1-2 minutes. Pour in milk, increase heat to medium high, and bring to a simmer, whisking frequently and let thicken, about 3 minutes.
Remove the pan from the hot burner before adding the cheese. Now mix the shredded cheese with the remaining 2 teaspoons of flour and add it by handfuls, whisking constantly, until all the cheese is added and the sauce is smooth. Add parmesan and horseradish, taste the sauce, and add salt and pepper.
Mix the fresh breadcrumbs with melted butter, parsley, and a pinch or two of kosher salt. (If you like a very crisp topping, give the breadcrumbs mixture a saute over medium heat for 4-5 minutes.)
To assemble, pour the cheese sauce over the cauliflower and mix well. Then scoop the cauliflower mixture into a casserole dish, 9x13 or equivalent. Top with breadcrumbs.
Bake for 20 minutes, or until the sauce is bubbly and the topping is golden brown.