Place a large pot on medium-high heat and add whole milk, water, condensed milk, evaporated milk, sugar and cardamom powder. Stir until sugar dissolves. (Add sliced dates at this point if using)
Place a wide non-stick pan over medium heat.
Add 1 tablespoon butter/ghee and add all the nuts and raisins and fry for about 2 minutes stirring continuously. The nuts will slightly turn golden and the raisins will plump up. Add them to the milk.
In the same pan, add 2-3 tablespoons of butter/ghee & add the vermicelli. STIR CONTINUOUSLY. Do not leave it unattended because it burns very easily. Do not let it brown too much or it will give a burnt taste. Takes about 3-4 minutes over medium heat.
As soon as you see it slowly changing color to goldern brown add it to the milk mixture. Give it a good stir.
Reduce the heat to medium-low and allow the milk to gentlly simmer. Cook uncovered for 8-10 minutes stirring a few times.
Once ready, remove from heat and garnish. It can be enjoyed warm or cold.