Wash, dry, and peel the carrots. Shred them using a food processor. Alternatively, grate them using a box grater.
Heat a 12-inch wok or any wide non-stick pan on medium heat. Add 1 tablespoon of ghee and melt it. Add the chopped nuts to the pan. Stir fry for a minute or until they turn a light golden color. Remove promptly and keep them aside for later.
Add 2 tablespoons of ghee to the pan and increase the heat to medium-high. Add grated carrots and stir-fry for about 5 minutes or until the color changes to a vibrant orange. This cooks off the excess moisture and prevents the carrots from turning mushy.
Add milk and stir well. As soon as the milk comes to a boil, reduce the heat to medium. Cook for about 30-35 minutes, stirring every few minutes, until most of the milk has been absorbed. Keep scraping the sides and bottom in between to prevent the milk from sticking and burning.
Now add sugar. Reserve a tablespoon or so of the fried nuts for garnish and add the remaining to the pan. Cook the halwa for another 5 to 10 minutes or until all the moisture is cooked off and the halwa looks dry.
Now add the remaining tablespoon of ghee along with cardamom powder and stir-fry the halwa for another 5 minutes. This is the extra step which is key to achieving the true Punjabi-style gajar ka halwa flavor.
Video
Notes
Use a wide non-stick skillet: A wide skillet helps reduce the liquids faster and results in even sauteing of carrots.
Carrots: Pick medium-sized carrots that have firm skin and no brown spots. When in season (winter) look for red carrots which are the traditional choice for this halwa.
Milk: I highly recommend using whole (full-fat) milk for this recipe to achieve the iconic rich taste and texture.
Ghee: I prefer to use homemade ghee here purely to maintain taste and quality. Any reputed store brand will also work.
Nuts: Nuts are optional and can be customized to your liking. Some recipes also call for golden raisins.
Don't skip the stirfrying: The initial step of stir-frying the grated carrots is critical to the end texture. Don't skip this step.
Sauteing in the end: The last step of sauteing the halwa with extra ghee adds a delightful caramelized flavor to this halwa, giving it the iconic Punjabi-style Gajar Ka Halwa taste. This step is optional, but highly recommended.
Note: The nutrition facts below are my estimates. If you follow any diet plan, I recommend cross-checking with your preferred nutrition calculator.