For the soup: Put the oil into a large saucepan and, when it is hot, add the ginger, coriander seeds, cumin seeds, fenugreek seeds and paprika and cook for 1 minute. Add the butternut squash and broth and bring to a simmer. Cook until the squash is very tender, 25 to 30 minutes.
Working in small batches, puree the squash and liquid in a blender until smooth. Taste and adjust seasoning. Pour into a clean pot to reheat.
For the asparagus: Place a skillet over medium heat and add the butter. When it begins to foam, add the fennel seeds, salt and asparagus and saute for a few minutes until the asparagus is bright green and tender but still crunchy.
To serve: Ladle the hot soup into a serving bowl and garnish with the asparagus.
Cook's Note: When blending hot liquids: Remove liquid from the heat and allow to cool for at least 5 minutes. Transfer liquid to a blender or food processor and fill it no more than halfway. If using a blender, release one corner of the lid. This prevents the vacuum effect that creates heat explosions. Place a towel over the top of the machine, pulse a few times then process on high speed until smooth.