You will need
Preheat oven to 180C/350F/Gas 4.
Remove the spears from the tops of the asparagus and reserve.
With a potato peeler remove the stringy outer skins from the stems and cut into 1"/2.5cm pieces (discard the woody bits).
Heat the oil and half the butter in a large saucepan and add the onion, garlic and stems.
Sweat slowly for 15 minutes.
Add the stock and simmer for a further 15 minutes.
Puree the soup and pass through a sieve.
Return to the saucepan and add the rest of the butter, the cream (60ml/4tbsp), asparagus tips and seasoning, then simmer until tips are tender.
Slice courgettes and soften gently in the oil in a saucepan.
Blend in a processor with the tarragon, eggs, double cream and seasoning.
Liberally butter 6 dariole moulds or cocotte dishes, then spoon in the courgette mixture to the top.
Put moulds in a roasting tin half filled with cold water.
Cover with greaseproof paper and cook in the oven for 30-40 minutes or until set.
To serve run a knife around the edges of the mousses and turn out onto soup plates. Surround with the hot asparagus soup and serve immediately.