01 - Preheat oven to 425°F. Toss chopped cauliflower stems and florets with 1 tablespoon olive oil, salt, and pepper. Spread evenly on a baking sheet.
02 - Roast cauliflower for 20 minutes, turning once halfway through, until golden and tender.
03 - While cauliflower roasts, heat remaining 1 tablespoon olive oil in a large pot over medium heat. Sauté onion, carrots, and celery for 5 to 7 minutes until softened. Add garlic and cook for 1 minute until fragrant.
04 - Add roasted cauliflower, drained white beans, dried thyme, ground cumin, and smoked paprika to the pot. Stir well to combine and coat evenly.
05 - Pour in vegetable broth and water. Bring to a boil, then reduce heat to low and simmer for 15 minutes until all flavors meld together.
06 - Remove pot from heat. Using an immersion blender, puree the soup until smooth and creamy. Alternatively, transfer in batches to a countertop blender, blend until silky, then return to the pot.
07 - Stir in heavy cream or plant-based cream, lemon zest, and lemon juice. Season with salt and pepper to taste. Warm through gently over low heat for 2 to 3 minutes.
08 - Ladle into bowls and garnish with chopped fresh parsley, a drizzle of olive oil, and croutons or toasted seeds as desired.