Make the Croutons: Toss cubed 2 crusty bread (sourdough), cubed — for croutons with a drizzle of 1 tablespoons olive oil, for finishing and croutons, a pinch of salt, and garlic powder. Spread on a baking sheet and bake at 375°F for 12–14 minutes
, flipping once halfway, until golden and crisp. Set aside.
Sauté the Onion: Heat a drizzle of 2 tablespoons olive oil, for sautéing in a medium pot over medium heat. Add 1 red onion, roughly chopped and cook, stirring occasionally, until soft and translucent.
Add the Garlic: Add 2 garlic cloves, crushed to the pot and stir frequently. Cook for 2 more minutes until fragrant and softened — do not let it burn.
Cook the Cauliflower: Add 1 medium purple cauliflower (or any variety), cut into florets to the pot with another small drizzle of 2 tablespoons olive oil, for sautéing. Stir to coat and cook for 4–5 minutes
to soften slightly and pick up the savory flavors.
Simmer Until Tender: Pour in 3 cups vegetable stock or water, plus more as needed. Bring to a simmer, then reduce heat and cook for 25–30 minutes
until the cauliflower is completely soft and almost falling apart. Add more stock or water as needed to keep the cauliflower mostly submerged. Season with 1 pinch salt and freshly cracked black pepper and 0.5 teaspoons cayenne pepper.
Add Cream and Cheese: Stir in 0.3 cups freshly grated Parmesan cheese (optional) (if using) and 0.3 cups heavy cream or full-fat canned coconut milk, plus more as needed. Mix well to combine before blending.
Blend Until Smooth: Using an immersion blender directly in the pot (or carefully in batches in a countertop blender), blend the soup until completely smooth and silky. Add more 3 cups vegetable stock or water, plus more as needed a little at a time until the soup reaches your preferred consistency. Taste and adjust 1 pinch salt and freshly cracked black pepper and 0.5 teaspoons cayenne pepper as needed.
Serve and Finish: Ladle into bowls. Swirl a little 0.3 cups heavy cream or full-fat canned coconut milk, plus more as needed on top, drizzle with 1 tablespoons olive oil, for finishing and croutons, and scatter croutons over the soup. Finish with 2 tablespoons extra Parmesan cheese, for topping (optional) if desired. Serve immediately while hot.