01 - Heat vegetable oil in a large skillet or sauté pan over medium heat. Add whole cumin seeds and let them sizzle until fragrant, approximately 30 seconds.
02 - Add the finely diced onion and cook, stirring occasionally, until translucent and softened, about 3 to 4 minutes.
03 - Stir in the minced garlic, grated ginger, and sliced green chili if using. Cook for an additional minute until aromatic.
04 - Add the diced tomato, ground turmeric, ground cumin, ground coriander, garam masala, chili powder, and salt. Cook the mixture, stirring frequently, until the tomatoes break down and the oil begins to separate, approximately 4 minutes.
05 - Add the cauliflower florets to the pan and toss thoroughly to coat each piece evenly in the spiced tomato mixture.
06 - Pour in the water or vegetable broth, cover the pan, and reduce the heat to medium-low. Simmer for 15 to 18 minutes, or until the cauliflower is tender yet still holds its shape.
07 - Reduce the heat to low. Whisk the Greek yogurt in a separate bowl until completely smooth, then gradually stir it into the curry in a slow, steady stream to prevent curdling. Let the sauce warm gently for 3 to 4 minutes. Do not allow it to boil.
08 - Taste the curry and adjust the seasoning with additional salt or spices as needed. Transfer to a serving dish and garnish generously with freshly chopped cilantro. Serve alongside steamed basmati rice, warm naan, or flatbread.