In a pan, on low heat, roast the semolina for 10 minutes or until slightly brown.
In a separate pot, add whole milk, sweetened condensed milk, and sugar.
Add in the cardamom, saffron, and rosewater, if using.
Let the milk cook and thicken, for 10 minutes, or until it coats the back of a spoon. Once the milk mixture is cooked add the roasted semolina and cook on low heat for few minutes, occasionally stirring.
Mix together 1 tablespoon of rice flour with a couple of tablespoons of water, and add the mixture into the pot. Cook for a few more minutes, until the mixture has thickened a little.
Pour into individual serving bowls, and top with sliced or crushed almonds, pistachios. Refrigerate for at least 2 hours, or overnight, until ready to serve.