Preheat oven to 425° F.
Cut cauliflower into florets, doing your best to keep them all around the same size. Do the same for the onion. Peel and chop your potatoes in slightly large sizes than the cauliflower, but also in equal-sized pieces. Add to a large bowl and add whole garlic cloves.
In a small bowl, add salt, curry, turmeric, chili powder, ginger, and dill. Mix.
Drizzle olive oil over the cauliflower and potatoes in the bowl and mix well. The sprinkle half of the spices and mix well. Add the other half of the spices and mix again, ensuring that all of veggies are coated.
Pour the contents of the bowl onto a large-rimmed baking sheet or baking dish and spread them out so that they are in an even layer. Roast for 40-45 minutes until potatoes are fork tender.
About 5 minutes before the veggies are done roasting, add vegetable stock to a large pot (if using an immersion blender) and heat on medium-low. If using a high-powered blender, you can just heat the stock in the microwave or a smaller pot.
Once the veggies are done, reserve a few pieces of the cauliflower and set aside to garnish the soup with (if desired) and then add them add the rest to the blender (depending on the size of your blender, you may need to do it in batches) and add the warm stock and lemon juice and blend until creamy. Or add veggies to the large pot of stock and use an immersion blender to blend until creamy.
Serve immediately and top with reserved roasted cauliflower pieces and fresh dill.