Make sure you peel the asparagus before you chop into small pieces.
Sauté onion in butter until soft in the bottom of a 4 quart saucepan.
Add the pieces of asparagus, and then add the stock and boil gently for about 30 minutes or until the asparagus is very soft.
Puree the soup in batches in the blender is sure to cover the lid with a cloth so the hot liquid does not slash out.
Return the pan then add the heads of the asparagus and cook until soft finish with the half and half and season with salt and pepper.