Peel and finely grate the carrots.
In a large, heavy-bottomed saucepan or pot, combine the grated carrots and milk.
Bring to a boil over medium-high heat.
Reduce the heat to a gentle simmer.
Cook, stirring frequently to prevent sticking, for about 2 hours, or until the mixture has reduced by more than half and is thick enough to coat the back of a spoon.
Stir in the sugar, raisins, saffron, cardamom, and rose extract.
Continue to simmer, stirring more often as it thickens, until the mixture is very thick and starts to pull away from the sides of the pan.
Add the butter (or ghee) and ground almonds.
Cook over low heat, stirring constantly for another 10 minutes to roast the nuts and prevent scorching. The halwa should now be a thick, cohesive mass.
Remove the pan from the heat and let the halwa cool slightly.
Transfer it to a serving platter and shape it into a mound or press it into a greased dish.
Garnish with the slivered almonds.
Serve warm or at room temperature with a drizzle of chilled, unsweetened cream.
Grate the carrots finely. A fine shred helps the carrots cook down faster and results in a smoother, more melt-in-your-mouth consistency.
Don't rush the process. The slow simmering is key to developing the deep, caramelized flavor and perfect texture of authentic Gajar ka Halwa.