In 3-quart saucepan, melt butter over medium heat. Add onion and celery; cook 4 to 5 minutes, stirring frequently, until vegetables are crisp-tender. Stir in flour. Cook 1 minute, stirring constantly. Stir in broth. Cook 5 to 7 minutes, stirring constantly, until thoroughly heated.
Remove from heat. Stir in asparagus. In food processor or blender, process asparagus mixture until smooth. If necessary, asparagus mixture can be processed in batches. Return to saucepan.
Stir in half-and-half. Cook 5 to 8 minutes, stirring occasionally, until slightly thickened and thoroughly heated.