Bring the water to a boil in a small saucepan and simmer asparagus tips for 2 minutes, or until barely tender. Rinse under cold water. Drain and set aside.
Melt 1 tablespoon of butter in a large saucepan. Saute onion and celery over medium heat until the onion is translucent (about 2-3 min). Add the uncooked asparagus stalks and the chicken or vegetable broth. Bring to a boil, reduce heat and simmer for 30 minutes.
Remove pan from heat and let soup cool.
Using a emulsifier (hand-held blender) or in batches inn counter-top blender, blend until smooth. Add back to pot.
Melt 3 tablespoons of butter in a clean saucepan over medium heat. Add the flour and stir until blended. Slowly add the cream, stirring constantly. Add to stock. Keep stirring until the soup has thickened. Do not let this boil! Just before serving add the reserved asparagus tips to heat through. Adjust salt and pepper to taste.
Garnish each serving with sour cream or a sprinkle of paprika.