Preheat the oven to 180C/350F/Gas 4 and grease 6 ramekins.
Heat the oil in a large saucepan and add the garlic and courgettes.
Cook the courgettes gently, on a slow sizzle so they soften without browning. Continue cooking, stirring frequently, until they are completely soft and almost all their water has evaporated (this may take 20 minutes or more). Then bash to a pulpy consistency with a wooden spoon or potato masher and set aside.
In a small pan, melt the butter and add the flour. Mix together, cook for 1 minute, then stir in the hot milk to make a thick béchamel, stirring continuously to avoid lumps.
Allow to bubble for just 1 minute (this ensures the flour is cooked through) then remove from the heat.
Add the bechamel to the courgette, along with the egg yolks, cheese, and a few twists of black pepper, and beat well to get a nice sticky mixture.
Whisk the egg whites until stiff and fold carefully into the mixture.
Divide between five to six ramekins or pile into one large soufflé dish.
Bake in a preheated oven for 12-15 minutes for ramekins, up to 35 minutes for large one. Serve straight from the oven, without delay.