Diwali 2026 gift boxes are hereSee gifts →
Recipes

Moong dal halwa recipe: the patient Rajasthani winter halwa

By the Mhara kitchen, Shekhawati · 6 min read ·
Moong dal halwa recipe served in a brass kadhai, grainy and glossy with saffron, almonds and buffalo ghee beside it

This moong dal halwa recipe uses soaked yellow moong dal ground to a coarse paste, roasted in plenty of ghee on a low flame for 35 to 45 minutes until grainy, golden and fragrant, then cooked with hot milk, sugar, saffron and cardamom. It takes patience, not skill.

At village weddings in Shekhawati there is often a halwai at the back whose only job is the moong dal halwa. He sits beside a huge kadhai with a long iron palta and stirs for what feels like an hour, and when the halwa finally comes out, grainy and shining with ghee, nobody wants the other sweets. At home we make a smaller batch on the first properly cold evening of the year. This moong dal halwa recipe is that home version: soaked dal ground coarse, roasted slowly in ghee, then cooked with milk, sugar, saffron and cardamom.

There is no secret in it. There is only time and a low flame. If you can give it 45 minutes of stirring, you can make it.

Why moong dal halwa takes so long

Moong dal paste is wet and starchy. When it first hits the ghee it clumps into a sticky mass. Over the next half hour the water cooks out, the starch dries, and the paste breaks down into small grains, each coated in ghee and roasted. That slow roast is where the flavour comes from. Rush it on a high flame and the outside browns while the inside stays raw, so the halwa tastes of uncooked dal no matter how much sugar you add.

This is why it is a winter halwa. Nobody wants to stand over a kadhai for 45 minutes in May. In December, the warmth of the stove is half the pleasure.

Soaking and grinding the dal

Use yellow moong dal, the split and skinned kind. Wash it two or three times and soak it for 4 to 5 hours, or overnight in winter. Drain it completely.

Grind it to a coarse paste, adding no more than 2 to 3 tablespoons of water, only if the mixer will not turn. The paste should feel slightly gritty between your fingers, like wet sooji, not smooth like dosa batter. A smooth, watery paste takes much longer to dry, sticks more and gives a pasty halwa instead of a grainy one.

Some families add 2 tablespoons of sooji or besan to the paste. It helps the grain and makes the halwa less likely to stick. It is optional, and we use it on days when the paste came out too fine.

The shortcut: you can also use roasted moong dal flour from the shop, or grind dry dal to a coarse flour. Roast it in the same ghee for 15 to 20 minutes and go straight to the milk. It is quicker and the taste is good, though the grain is finer than in a classic moong dal halwa recipe made with soaked dal.

How much ghee in moong dal halwa?

More than you would like. For 1 cup of dal (200 g), use ¾ to 1 cup of ghee (150 to 200 g). With less, the paste sticks to the kadhai, burns at the bottom and never breaks into separate grains. Ghee is not only flavour here; it is what roasts the dal. Some of it comes back out at the end, and you can spoon that off if you like.

This is a festive sweet, not an everyday one. A small katori is a serving. If you are keeping an eye on your fat for the day, our guide on how much ghee per day puts it in context.

For the ghee itself, many Rajasthani homes reach for buffalo ghee here. It is thick and creamy and gives moong dal halwa with ghee that rich, heavy, melt-in-the-mouth feel. Cow bilona ghee gives a lighter halwa with a stronger aroma. We compare them in cow ghee vs buffalo ghee.

Desi Buffalo Ghee
Desi Buffalo Ghee500 ml · 1 litre · 2 litre · 5 litre · free delivery across India
from ₹1,049See the jar

Moong dal halwa recipe: the roast, stage by stage

Use the heaviest kadhai you own. Heat the ghee on a low to medium flame, add the dal paste and start stirring. Keep the flame low for the whole roast. You will see three stages:

  1. The first 10 minutes: a sticky lump that clings to the spatula. Keep breaking it with the edge of the palta and pressing it against the kadhai. This is the hardest part on your arm.
  2. 10 to 25 minutes: it loosens and turns crumbly, like wet sand. The colour is still pale. The ghee is mostly absorbed.
  3. 25 to 45 minutes: the grains separate, the colour deepens to golden brown, ghee starts to bubble out at the sides, and the kitchen smells nutty, almost like roasted almonds. That is when it is done.

Do not stop at pale gold because your arm hurts. Most of the flavour arrives in the last ten minutes.

From our kitchenKeep the milk hot on the next burner before the roast ends. Cold milk poured into hot ghee splutters badly and makes the dal seize into lumps. Stand back and pour slowly.

Milk or water, sugar and saffron

While the dal roasts, heat 2 cups of full-cream milk with ¾ to 1 cup of sugar and a pinch of saffron until the sugar dissolves. Pour it into the roasted dal slowly, stirring all the time. It will hiss and bubble up, so keep your hand away.

Cook for another 8 to 10 minutes, stirring, until the milk is fully absorbed, the halwa thickens and ghee starts to separate at the sides again. Add ½ teaspoon of cardamom powder and chopped almonds and pistachios.

Some families use 1½ cups of water instead of milk. The halwa comes out lighter and less creamy, and some people prefer it that way. Use ¾ cup sugar for a mildly sweet halwa and 1 cup for a proper mithai-shop taste.

Moong dal halwa tips: lumps, raw taste and too much ghee

  • Lumps: the paste went into ghee that was too hot, or the milk was cold. Press the lumps against the kadhai with the back of the palta. A few small ones are normal and break up as you go.
  • Raw, beany taste: the roast was too short or the flame too high. Put it back on a low flame and keep roasting before you add more milk.
  • Too oily: tilt the kadhai and spoon off the extra ghee. Keep it for parathas.
  • Dry and hard after cooling: normal. Moong dal halwa firms up as it cools. Warm it before serving.
  • Sticking and burning at the bottom: a thin kadhai, too little ghee or a high flame.

Serving, storing and reheating

Serve it warm, never straight from the fridge. Moong dal halwa keeps 5 to 6 days in a closed box in the fridge, and a day or two outside in cold weather. To reheat, put a portion in a kadhai with a tablespoon of milk and stir on a low flame for a few minutes until soft and glossy again. In the microwave, sprinkle a little milk on top and heat in short bursts.

With Diwali on 8 November, it makes a good Diwali halwa to serve warm after the puja, when sweets from the shop are cold on the plate. If you are planning a full menu, our list of Diwali sweets with desi ghee has more. And once the red carrots come into the mandi later in the season, our gajar ka halwa recipe is the other winter halwa we make every year.

Want this ghee? Desi Buffalo Ghee: price and buy online — 500 ml · 1 litre · 2 litre · 5 litre · from ₹1,049 · free delivery across India

Recipe card

20 minprep55 mincook6serves

Ingredients

  • 1 cup (200 g) yellow moong dal, washed and soaked 4–5 hours
  • 3/4 to 1 cup (150–200 g) buffalo ghee or cow bilona ghee
  • 2 tbsp sooji or besan (optional, helps the grain)
  • 2 cups (480 ml) full-cream milk, or 1 1/2 cups (360 ml) water
  • 3/4 to 1 cup (150–200 g) sugar
  • 12–15 saffron strands
  • 1/2 tsp green cardamom powder
  • 2 tbsp chopped almonds
  • 2 tbsp chopped pistachios

Method

  1. Drain the soaked dal completely and grind it to a coarse paste, adding at most 2–3 tbsp water. Mix in the sooji or besan if using.
  2. Heat the ghee in a heavy kadhai on a low to medium flame and add the dal paste.
  3. Stir continuously on a low flame, breaking the lumps and pressing them against the kadhai, for the first 10 minutes.
  4. Keep roasting for another 25–35 minutes, until the grains separate, the colour turns golden brown, ghee bubbles out at the sides and it smells nutty.
  5. Meanwhile, heat the milk (or water) with the sugar and saffron until the sugar dissolves. Keep it hot.
  6. Pour the hot milk (or water) into the roasted dal slowly, stirring all the time. Stand back; it splutters.
  7. Cook for 8–10 minutes, stirring, until the milk is absorbed, the halwa thickens and ghee separates again.
  8. Stir in the cardamom, almonds and pistachios, and spoon off any extra ghee if you like.
  9. Serve warm. Refrigerate leftovers for up to 5–6 days and reheat with a spoon of milk.

Questions people ask

How much ghee is needed for moong dal halwa?

For 1 cup (200 g) of moong dal, use ¾ to 1 cup (150 to 200 g) of ghee. With less, the paste sticks, burns and never turns grainy. Any extra ghee that separates at the end can be spooned off and used elsewhere.

How long does it take to roast moong dal for halwa?

About 35 to 45 minutes on a low flame, stirring all the time. It is done when the grains separate, the colour is golden brown, ghee bubbles out at the sides and it smells nutty. Stopping early leaves a raw taste.

Why is my moong dal halwa lumpy?

Usually the paste went into very hot ghee or the milk was added cold. Keep the flame low, press lumps against the kadhai with the back of the spatula as you roast, and always pour in hot milk slowly.

Can I make moong dal halwa with moong dal flour?

Yes. Roast coarse moong dal flour in the same amount of ghee for 15 to 20 minutes until golden and fragrant, then add the hot milk and sugar. It is faster, though the grain is a little finer than with soaked dal.

Should I use milk or water in moong dal halwa?

Milk gives a creamier, richer halwa. Water gives a lighter, less creamy halwa that some people prefer. For 1 cup of dal, use about 2 cups of milk or 1½ cups of water.

How do I reheat moong dal halwa?

Put it in a kadhai with a tablespoon of milk and stir on a low flame for a few minutes until soft and glossy. In a microwave, sprinkle a little milk on top and heat in short bursts, stirring in between.

Keep reading

A small note about cookiesWe use Google Analytics to see which ghee people like, and the Meta Pixel to show our ghee on Facebook, Instagram and WhatsApp to people who visited. Your name, phone and address are never shared, nothing is sold. Privacy policy