Prepare the asparagus by cutting away and discarding the tough, stringy white ends of the stalks, reserve 12 asparagus tips to garnish the soup, then chop the green parts of the rest of the asparagus into 1 inch (2.5 cm) lengths.
Next, melt the butter in a large saucepan over a gentle heat and cook the chopped onion in it for 5 minutes, keeping the heat low to prevent the onion colouring.
Stir the asparagus into the melted butter and onion, then put a lid on and let it sweat for about 10 minutes, giving it a stir now and then. Sprinkle in the tablespoon of flour, stir again to soak up the juices and add the hot chicken stock, a little at a time, stirring after each addition.
When all the stock is in, bring to simmering point, season with salt and freshly milled black pepper and keeping the heat low, let the soup barely simmer, partially covered, for 20-25 minutes. Now you need to let the soup cool a little, then pour it into a blender and blend in batches (a large bowl is helpful here). Taste to check the seasoning.
Finally, stir in the double cream or creme fraiche and the reserved asparagus tips. Re-heat gently for 3-4 minutes and serve very hot in warm soup bowls or alternatively, cool and chill thoroughly before serving in chilled bowls.