Step 1
Place the bacon in a large deep skillet and cook over medium-high heat turning occasionally until evenly browned about 10 minutes. Drain the bacon slices on a paper towel-lined plate. Crumble bacon when cool; set aside. Reserve 1 tablespoon of bacon drippings.
Step 2
Melt butter with drippings in a saucepan over medium heat.
Step 3
Cook and stir celery and onion in the saucepan until onion is translucent about 4 minutes.
Step 4
Whisk flour into the mixture and cook for 1 minute.
Step 5
Whisk in chicken broth and bring to a boil.
Step 6
Add potato and chopped asparagus stalks reserving the asparagus tips for later. Season with salt and ground black pepper.
Step 7
Reduce heat and simmer for 20 minutes.
Step 8
Pour the soup into a blender filling the pitcher no more than halfway full. Hold down the lid of the blender with a folded kitchen towel and carefully start the blender using a few quick pulses to get the soup moving before leaving it on to puree. Puree in batches until smooth and pour into a clean pot. Alternately you can use a stick blender and puree the soup right in the cooking pot.
Step 9
Cook and stir mushrooms and asparagus tips in the same skillet used for bacon until mushrooms give up their liquid 5 to 8 minutes. Season with salt and ground black pepper if needed.
Step 9
Stir mushrooms asparagus tips and half-and-half cream to pureed soup. Cook until thoroughly heated.