Heat the oil in a large saucepan. Add the onion and fry very gently until transparent, about 5 minutes.
Add the chicken pieces to the pan and cook over a fairly high heat for 2-3 minutes, stirring all the time.
Add the chicken stock, lemon zest ONLY (juice will be added later) and thyme to the pan and simmer for 10 minutes.
Meanwhile, blanch the asparagus in boiling water for 1-2 minutes. Remove and plunge into ice water. (Save some of the small tips for garnish if you wish).
Add the asparagus and the basil leaves to the pan, cover and simmer 30 minutes until the asparagus is well cooked.
Allow the mixture to cool about 15 minutes, then process in a blender or food processor until very smooth. Poor back into the pan.
Beat the egg yolk with a little of the cream, strain into a small bowl, add a little of the soup and mix thoroughly. Add to the soup with the lemon juice and the rest of the cream. Allow to warm through gently, being careful not to let it boil.
Serve the soup garnished with a few of the reserved asparagus tips and a sprig of fresh basil.