In a large saucepan, sweat the pancetta with the olive oil until crispy and fully rendered, 5 minutes. Remove the pancetta from the pan and set aside. Add the onions, shallots and garlic. Lightly season with salt and pepper. Once the aromatics are soft, about 5 minutes, add the stock, bread and tarragon. Bring the mixture to a boil and add the asparagus and spinach. Simmer until the asparagus is tender, about 15 minutes.
Transfer the contents to a blender, and make sure you've added enough stock to achieve the desired consistency. Blend the soup and season with the lemon juice. Adjust the salt and pepper as necessary. If available, strain through a fine mesh strainer. This soup can be served hot or chilled.
Serve with the crispy pancetta, chopped chives and a dollop of creme fraiche. If serving cold, additional chicken stock may be necessary to make sure the consistency is correct.
When blending hot liquid, first let it cool for five minutes or so, then transfer it to a blender, filling only halfway. Put the lid on, leaving one corner open. Cover the lid with a kitchen towel to catch splatters, and pulse until smooth.