1Place asparagus and onion in a saucepan with 120ml vegetable stock. Bring the stock to the boil, reduce heat and let simmer until the vegetables are tender.
2Reserve a few asparagus tips for garnish. Place remaining vegetable mixture in an electric blender and puree until smooth.
3Melt butter in the pan that was used for simmering the asparagus and onions. Stir while sprinkling flour, salt, and pepper into the butter. Do not let the flour brown. Allow the mixture to cook only 2 minutes. Stir in remaining 300ml vegetable stock and increase the heat. Continue stirring until the mixture comes to the boil.
4Stir the vegetable puree and milk into the saucepan. Whisk cream into the mixture. Stir until heated through, then ladle into bowls. Garnish with reserved asparagus tips. Sprinkle with Parmesan if desired.