1Prepare the vegetables. Peel the potatoes and cut them into 1-inch cubes - they should be similar in size to the cauliflower florets for even cooking. Cut the cauliflower into medium-sized florets, breaking apart any large pieces. Wash and dry the florets thoroughly - wet cauliflower will steam instead of developing the desirable golden edges. Dice the onion, mince the garlic, grate the ginger, and slit the green chilies lengthwise (this releases flavor while keeping the seeds contained). Dice the tomatoes. Have all your spices measured and ready, as the cooking moves quickly once you begin.
2Heat the oil or ghee in a large, wide skillet or kadai over medium-high heat. Ghee adds authentic flavor, but vegetable oil works well for a vegan version. When the oil shimmers, add the cumin seeds. Let them sizzle and pop for about 30 seconds until fragrant and slightly darkened - this is called tempering (tadka) and releases the aromatic oils in the seeds. Be careful not to burn them. Add the slit green chilies and stir for a few seconds.
3Add the diced onion to the pan and sauté for 5-6 minutes until softened and golden brown at the edges. Add the minced garlic and grated ginger, stirring for another minute until very fragrant. Add the ground turmeric, ground coriander, ground cumin, and red chili powder. Stir constantly for 30 seconds to toast the spices and coat the onions - this blooms the spices and prevents them from tasting raw. Add a splash of water if the spices start to stick or burn.
4Add the diced tomatoes and cook for 3-4 minutes, stirring occasionally, until they break down and form a thick masala paste. The oil should begin to separate from the tomato mixture around the edges - this indicates the masala is properly cooked. Add the cubed potatoes and cauliflower florets to the pan. Toss everything together to coat the vegetables evenly with the spice mixture. Season with salt.
5Reduce the heat to medium-low. Cover the pan and cook for 15-20 minutes, stirring occasionally, until the potatoes and cauliflower are tender when pierced with a fork. Resist the urge to add water - the vegetables will release enough moisture to steam themselves, and keeping the dish dry allows the vegetables to develop golden, slightly charred edges. If the vegetables are sticking, reduce the heat and add just a tablespoon or two of water. Remove the lid during the last 5 minutes to allow any excess moisture to evaporate and the edges to crisp slightly.
6Once the vegetables are tender and have golden spots, sprinkle with garam masala and toss gently. The garam masala is added at the end to preserve its aromatic qualities. Remove from heat and add the lemon juice, which brightens all the flavors. Taste and adjust seasoning - you may need more salt or a pinch more chili powder. Transfer to a serving dish and garnish generously with fresh chopped cilantro. Serve hot with roti, paratha, naan, or steamed basmati rice. Aloo gobi is traditionally part of a larger Indian meal that might include dal (lentils), raita (yogurt), and pickles. The dish tastes even better the next day as the flavors continue to develop - store refrigerated and reheat gently in a pan, adding a splash of water if needed.