Peel and chop carrots into 1-inch pieces. Dice onion and celery, mince garlic, and have all spices measured before starting.
Heat olive oil or butter in a large pot over medium heat. Add onion and celery and cook, stirring occasionally, for 7-8 minutes until soft and translucent. Add garlic and cook 1-2 minutes until fragrant.
Add chopped carrots, cumin, smoked paprika, ground ginger, salt, and pepper. Stir to coat vegetables in spices and toast for about 1 minute.
Pour in broth, scrape up any browned bits, and bring to a boil. Reduce heat, cover partially, and simmer for 20-25 minutes until carrots are very tender.
Remove from heat and cool for 5 minutes. Blend with an immersion blender until completely smooth. If using a countertop blender, blend in batches, filling no more than halfway.
Return soup to low heat if needed. Stir in heavy cream in a slow stream, then add lemon juice. Adjust seasoning with salt, pepper, or more lemon juice to taste.
Ladle into warm bowls, garnish with fresh parsley or chives, and drizzle with additional cream or sour cream if desired. Serve with crusty bread.