Start by filling a 2 qt saucepan with water about half way and bring it to a boil. Prepare an ice bath to have standing by.
Blanch the cut asparagus in the boiling water until slightly tender, less than 2 minutes. Remove the asparagus and immediately add to ice water to stop the cooking process. From here, place the asparagus on a paper towel lined sheet tray to dry.
1 lb Fresh Asparagus
In the same cleaned saucepan, add butter over low to medium heat to melt until it begins to foam. Add the onions and sweat until soft and translucent but do not allow it to brown.
5 tbsp Unsalted butter, 1/2 cup Yellow onion
Stir in the flour to form a roux and cook about 2-3 minutes, just enough time to cook the raw flour flavor out but not long enough to allow it to color.
5 tbsp AP flour
Whisk in the stock, salt, pepper, and blanched asparagus. Turn up the heat to high.
1 qt Chicken stock, Salt, White pepper
Continuously whisk along the bottom to ensure the roux does not burn until the mixture comes to a boil then reduce it to a low simmer. Let simmer for about 10 minutes to allow the flavors to come together.
Turn off the stove and puree the soup to a smooth consistency using an immersion blender or a standing blender. be cautious if using a standing blender and be sure to blend in batches never filling the carafe more than halfway.
Check for seasoning and whisk in the heavy cream. Garnish the bowled soup with creme fraiche and enjoy.
1/2 cup Heavy cream, 4 tbsp Creme fraiche