Preheat the over to 400º F.
Bring a large pot of salted water to boil. Add the cauliflower and cook for 5 minutes. Drain well.
Melt the butter in a saucepan over medium heat. Once melted, add in 2 tablespoons of flour and whisk, stirring constantly, until it just begins to brown, about 1 minute.
Whisk in the milk, salt, garlic and onion powder and pepper until smooth. Once mixture begins to boil, stir constantly for 1 minute.
Remove the sauce from the heat and mix in half of the cheese until smooth.
Spread ⅓ of the sauce on the bottom of an 8 by 8 by 2-inch baking dish. Place the drained cauliflower into the dish and then pour the remaining sauce on top.
Sprinkle with the remaining cheese and top with bread crumbs.
Bake for 20 to 25 minutes until the top is golden brown and bubbly. Serve hot.