6 bunches fine asparagus (total weight of approx. 1.2kg)
2 litres vegetable or light homemade chicken stock
300g trimmed and cleaned leeks
100g unsalted butter, plus 25g extra for drizzling
3 sticks celery, thinly sliced
65g plain flour
3 tbsp double cream
1 tsp white wine vinegar, for poaching
8 large, really fresh free-range eggs
Salt and freshly ground black pepper
Rinse the asparagus is cold water to rid it of any sand, then snap off the woody ends and roughly chop them. Put them into a pan with the stock, bring to the boil, cover and simmer for 15 minutes, then strain and set aside.
Meanwhile, cut the 4cm-long tips from half the asparagus spears. Roughly chop the remaining stalks.
Bring 2 small pans of water to the boil. Add some salt to one pan, drop in the asparagus tips and cook for 2 minutes until just tender. Drain, refresh under cold water and set aside. Add the vinegar and pinch of salt to the second pan and reduce the heat to low. Break one of the eggs into a teacup. Swirl the water with a spoon to create a whirlpool, drop in the egg and leave it to poach for 3 minutes, then carefully remove with a slotted spoon to a plate. Repeat with the remaining eggs, bringing the water back to the boil and then lowering again each time. Leave the poaching water over a low heat.
Cut off the really dark green leaves from the leeks (and discard or save for stock) and thinly slice the remainder. Melt 100g of the butter in a large pan, add the asparagus stalks, sliced leeks and celery, cover and cook over a low heat for 10 minutes until soft but not browned.
Uncover, stir in the flour and cook for 1 more minute. Stir in the asparagus-flavoured stock, cover again and simmer for 10 minutes until the vegetables are tender. Remove from the heat, cool slightly and then liquidise the soup in batches until very smooth. Pass through a sieve back into a clean pan, bring back to a simmer and stir in the cream and some seasoning to taste.
Melt the remaining butter. Lower the poached eggs back into the simmering water and leave for 30 seconds, then remove and drain briefly on kitchen paper. Ladle the soup into warmed bowls and scatter over the asparagus tips. Place a poached egg into the centre of each bowl, season the top of each one with a little salt and pepper then drizzle over the melted butter and serve.