Heat ghee in a pan or pot. Fry cashews until light golden and then stir in the chopped almonds and raisins.
Fry until the raisins turn plump. Set aside half of the nuts & raisins if you want for garnish.
Reduce the heat and add the semolina to the ghee. Begin to fry on a low to medium heat, stirring continuously.
Meanwhile pour water to a pot or kettle and heat it. You don’t need to boil it, just very hot water is enough.
When the semolina turns light golden and aromatic, pour all of the hot water at once carefully.
Give a good stir to ensure there are no lumps. Cover and cook until all of the water is absorbed, for a few minutes.
Stir in the sugar & cardamom powder. You will see the halwa turns runny. At this stage you can also taste test and add more sugar if you want.
Cover and cook until all of the sugar has dissolved and the halwa begins to leave the pan. At this stage you can see ghee begins to release from the halwa. If you prefer more ghee, add it at this stage.
Add rose water if using and turn off. Add the fried nuts and raisins if you had set aside.
Serve Halwa hot or warm as a dessert or with Poori.