In a large pot, heat the olive oil or butter over medium heat. Add the chopped onion and cook for 5 to 7 minutes, stirring occasionally, until soft and translucent.
Add the garlic, ginger, cumin, nutmeg, salt, and pepper. Cook for another 1 to 2 minutes until fragrant.
Stir in the pumpkin puree and mix well with the onions and spices.
Pour in the vegetable or chicken stock and bring the mixture to a gentle boil. Reduce the heat and let it simmer for 15 to 20 minutes.
Remove the pot from the heat. Use an immersion blender to blend the soup until smooth and creamy. If using a countertop blender, allow the soup to cool slightly before blending in batches.
Return the soup to low heat and stir in the heavy cream. Mix until fully combined and warmed through.
Ladle the soup into bowls and garnish with pumpkin seeds, croutons, or a swirl of cream if desired.