From the cauliflower head, cut 1 cup of small florets and reserve. Coarsely chop the remaining cauliflower, including stem and core.
Heat 1 tbs of oil in a large heavy saucepan over medium heat. Add the chopped cauliflower, onion and 2 tsp salt. Cover. Cook, stirring occasionally, for 15 mins or until onion softens. Add 5 cups (1.25L) of water and cook, covered, for 15 mins or until cauliflower is completely tender. Cool, then transfer to a blender and carefully blend until completely smooth. Season with salt. Reheat. Keep warm until ready to serve.
Meanwhile, preheat oven to 200°C (180°C fan-forced). Line a baking tray with baking paper. Arrange 8 equal mounds of parmesan, about 4cm apart, on prepared tray. Use the back of a spoon to flatten mounds to even thickness, about 8cm in diameter. Bake for 6 mins or until parmesan melts and is pale golden. Cool on tray until crisp. Sprinkle with pepper. Transfer to a bowl and break into breadcrumb-sized pieces.
Heat remaining 1 tbs oil in a large heavy frying pan over medium-high heat. Add reserved cauliflower florets and cook, tossing frequently, for 4 mins or until cauliflower is heavily browned. Transfer to a plate lined with paper towel and sprinkle with salt.
Ladle soup into serving bowls and garnish with cooked florets, parsley, parmesan crumbs and lemon zest. Grind black pepper over each bowl to serve.