Melt butter in a large saucepan over medium-high heat. Add onion and garlic, and saute 5 minutes. Season with salt and pepper. Add asparagus and saute another 4 minutes. Add the chicken stock and bring to a boil. Reduce to simmer and cook for 30 minutes, until asparagus is very tender. *Carefully transfer to a blender and puree until smooth. Return to saucepan, stir in sour cream and season with salt and pepper, to taste. Transfer to serving bowls. Dust with paprika and serve.