Preheat the oven to 180°C.
Bring a large pan of salted water to the boil then add the cauliflower florets and cook for 5 -8 minutes. Drain thoroughly and place the cauliflower florets in an ovenproof dish and set aside.
Melt the butter and add the onions. Cook for 2 minutes until softened or lightly coloured if desired for stronger flavoured.
Stir in the flour and cook, stirring over a low heat for a minute until the mixture becomes pale white.
Gradually stir in the milk. Bring to the boil, stirring until thickened. Remove from the heat.
Add the cheese and check the seasoning at this stage.
Pour the sauce over the cauliflower to cover and sprinkle extra parmesan over if desired.
Bake for 20 – 30 minutes, until golden brown and piping hot.