Prep Time: 4–6 hours soaking
Cooking Time: 45–60 minutes
Servings: 5–6
Ingredients
1 cup yellow moong dal, preferably split and skinned
½ cup ghee
2 cups full-fat milk
1 cup water
4–5 tbsp Zeroh, or according to taste
½ tsp cardamom powder
10–12 almonds, finely chopped
10–12 pistachios, finely chopped
8–10 cashews, chopped
8–10 saffron strands
2 tbsp warm milk for soaking saffron
Method
Soak the moong dal
Wash the moong dal thoroughly and soak it in enough water for 4–6 hours. Drain completely. Transfer the soaked dal to a blender and grind it into a coarse paste using very little water.
Don't make it completely smooth. A slightly coarse texture gives moong dal halwa its characteristic bite.
Roast the dal
Heat a heavy-bottomed pan and add the ghee. Add the ground moong dal and begin cooking over low to medium-low heat.
Now comes the important part: keep stirring. The dal will initially look thick and pasty. As it cooks, it will absorb the ghee and gradually become grainier, change colour and develop a deep roasted aroma.
Continue roasting for around 25–35 minutes.
Don't increase the heat just to speed things up. Moong dal can easily catch at the bottom, and once it burns, there is no rescuing the halwa.
The dal is properly roasted when it turns golden, smells distinctly nutty and no longer has a raw lentil aroma.
Prepare the milk mixture
While the dal is roasting, heat the milk and water together in another saucepan.
Bring it to a gentle simmer. Soak the saffron strands in 2 tbsp warm milk and keep aside.
Add the milk
Once the dal is thoroughly roasted, slowly add the hot milk mixture while stirring continuously.
Be careful because the mixture can bubble and splutter when the liquid hits the hot ghee and dal. Keep stirring and cook until the dal absorbs the liquid.
Add Zeroh
Once most of the milk has been absorbed and the halwa starts becoming thick again, add Zeroh.
Mix well and continue cooking for another 5–8 minutes. Add the saffron milk and cardamom powder.
Continue stirring until the halwa becomes thick, glossy and begins leaving the sides of the pan.
Finish with nuts
Add the chopped almonds, pistachios and cashews. Mix well and cook for another 2–3 minutes.
Turn off the heat and let the halwa rest for a few minutes before serving. Garnish with additional nuts and saffron.
Why Moong Dal Halwa Takes So Long
The slow roasting isn't just for flavour.
If you rush this stage with high heat, the outside can brown before the dal is properly cooked, leaving you with a halwa that tastes raw rather than rich and nutty.
In other words: yes, your arm is allowed to complain. Keep stirring.
Nutrition Note
Moong dal gives this halwa something many traditional sweets don't have: a meaningful amount of plant protein and dietary fibre.
It also provides folate, iron, magnesium and potassium. The milk adds protein and calcium, while nuts contribute vitamin E, magnesium and unsaturated fats.
At the same time, the generous amount of ghee makes moong dal halwa energy-dense.
Recipe Tips
- Use yellow split moong dal without the skin.
- Don't grind the soaked dal into a completely smooth paste. A coarse grind gives better texture.
- Roast the dal patiently. This is the most important step.
- Keep the heat low to medium-low and stir continuously to prevent burning.
- Add hot milk rather than cold milk to reduce the sudden temperature change.
- Be careful when adding milk because the mixture can splutter.
- Add Zeroh after the dal has roasted properly.
- If the halwa becomes too thick after cooling, gently warm it with a splash of milk before serving.
- Don't reduce the ghee drastically if you want the traditional halwa texture. Ghee plays a functional role here, not just a flavour role.
Soft, nutty, fragrant and unapologetically rich.
Moong dal halwa may take an hour of stirring, but one spoonful is usually enough to make you forget how much your arm hurt.

