This recipe removes all the weird pulp of cooked asparagus but keeps all the flavor.
Cut the asparagus into 1-inch pieces. Melt the butter in a large heavy saucepan over medium- high heat. Add the onion and the asparagus pieces, and cook for 5-6 minutes, stirring frequently until the asparagus turns bright green (Do not let the asparagus brown).
Stir in the chicken broth and bring to a boil over high heat. Reduce the heat to medium and simmer for about 5 minutes until the tips are tender. Use a slotted spoon to remove 15-20 asparagus tips for garnish.
Set aside, covered. Season the soup with salt and pepper, cover and continue cooking for 15-20 minutes until the asparagus is very tender. Transfer the vegetables and some of the liquid to a blender or food processor and puree until smooth, working in batches if necessary. Using a strainer and the back of a spoon or ladle extract the liquid form the blended mixture back into the saucepan. Dispose of the blended mixture once you get all the liquid out you can. Bring back to a boil over medium high heat and stir in the cream. Whisk the cornstarch mixture into the boiling soup and boil for 1-2 minutes until slightly thickened. Adjust seasoning. Add the reserved asparagus tips Ladle the soup into blows and garnish with parmesan cheese.