Cut cauliflower to yield 1 cup small florets; set remaining cauliflower florets aside.
Stir together curry powder, ½ teaspoon salt, cardamom, turmeric, and pepper.
Heat 2 tablespoons oil in a Dutch oven over medium heat. Add 1 cup of small cauliflower florets and 1 teaspoon spice mix.
Cook, stirring occasionally, until cauliflower is lightly browned, about 3 minutes. Add cashews; cook 2 minutes more. Remove from pan using a slotted spoon. Set aside.
Add remaining 1 tablespoon oil to pan with onion and remaining spice mix. Cook, stirring
occasionally, until onion is softened, about 6 minutes. Add garlic and ginger; cook 2 minutes more.
Add remaining cauliflower, broth, and coconut milk.
Bring to a simmer; cover, and cook until cauliflower is tender, about 20 minutes.
Puree soup using an immersion blender or regular blender. Stir in yogurt.
Garnish servings with cilantro and reserved cauliflower florets and cashews.