Recipe Card
Traditional malai kulfi made the slow, authentic way — milk simmered for hours until dense and creamy, perfumed with cardamom and studded with pistachios. No churner, no eggs, just patience.
Ingredients
- 2 litres full-fat milk (whole milk; buffalo milk preferred if available)
- 100g unsweetened khoya (mawa), crumbled
- 150g sugar (3/4 cup)
- 8–10 green cardamom pods, seeds ground fresh
- 10–12 saffron strands, soaked in 2 tablespoons warm milk (optional)
- 3 tablespoons pistachios, blanched and roughly chopped
- 3 tablespoons almonds, blanched, peeled and roughly chopped
- 1 teaspoon cornflour mixed with 2 tablespoons cold milk (optional thickener)
Instructions
- Set up the simmer. Pour the 2 litres of milk into a heavy-bottomed pan and bring it to a gentle boil over medium-high heat, stirring frequently so the bottom does not catch. The moment it rises, lower the heat to a steady low-medium simmer — you want lazy bubbles breaking the surface, not a rolling boil that will scorch the milk.
- Reduce and harvest the malai. Simmer the milk, stirring and scraping the bottom and sides every 5–7 minutes, for about 60–75 minutes. You will notice cream (malai) forming in sheets on the surface. Using the back of your ladle, lift each sheet and stick it to the inner walls of the pan above the milk line, letting it dry and crisp slightly. This traditional step concentrates the flavour — you will fold the malai back in later. Continue until the milk has reduced to roughly 700–800 ml, thick enough to coat the back of a spoon heavily.
- Add the khoya. Crumble the khoya into the reduced milk and stir continuously for 5–6 minutes until it melts completely into the base. If you are using the cornflour slurry, stir it in now and cook for 2 minutes more. The mixture should now be the consistency of a thick pouring custard. Scrape the dried malai sheets off the pan walls, crumble them roughly, and fold them back into the mixture.
- Sweeten and flavour. Add the sugar and stir until fully dissolved, about 2 minutes. Stir in the freshly ground cardamom and the saffron-infused milk (if using). Simmer for another 2–3 minutes, then switch off the heat. Now the crucial taste test: dip a spoon and taste — the warm mixture should taste slightly sweeter than you want the final kulfi, because freezing mutes sweetness. Adjust sugar if needed.
- Cool completely. Let the mixture cool to room temperature, stirring occasionally so no skin forms, then refrigerate for at least 1 hour until thoroughly chilled. Filling moulds with warm mixture creates ice crystals later — this cooling step is what guarantees a smooth, dense texture. Stir in half the chopped pistachios and almonds once chilled.
- Fill and freeze. Pour the chilled mixture into kulfi moulds, filling them to the top. Tap each mould gently on the counter to release trapped air bubbles. Sprinkle the remaining nuts on top, cover tightly with foil or the mould lids, and freeze for at least 6–8 hours, preferably overnight, at the coldest setting of your freezer.
- Unmould cleanly. To release a kulfi, rub the outside of the mould between your palms for 15–20 seconds, or dip it in warm water for 5 seconds (not longer, or it will melt). Invert onto a plate and gently twist — the kulfi should slide out in one smooth, glossy piece. For kulhad-style serving, simply serve in the earthen cup.
- Serve. Slice each kulfi into 2–3 discs with a sharp knife dipped in warm water. Serve immediately with a sprinkle of extra pistachios, or go street-style over falooda vermicelli with rose syrup and basil seeds for kulfi-falooda.
Tip: Read through the full post below for step-by-step photos, pro tips, variations and FAQs before you start cooking.
The Story Behind India’s Royal Frozen Dessert
Long before churned ice cream reached Indian shores, the royal kitchens of the Mughals were already serving something even more luxurious. Legend has it that kulfi — its name derived from the Persian word qulfi, meaning a covered cup — was created by simmering milk for hours until it reduced to a dense, caramel-tinged concentrate, then freezing it with mountain ice in earthen pots sealed with cloth. No churning, no eggs, no fancy equipment — just milk, patience, and the magic of slow heat. The result was a frozen dessert so dense and creamy that it stands up to slicing with a knife, with a texture unlike any ice cream you have ever tasted.
Malai kulfi is the purest expression of this tradition. The word malai refers to the thick layer of cream that forms on top of simmering milk, and in the authentic method it is not a garnish but the very soul of the dessert. As the milk simmers, sheets of malai form on the surface; the cook skims them and lines the sides of the pan, folding them back in later so the finished kulfi has a luscious, almost chewy richness. This is what separates true kulfi from quick “ice cream with cardamom” imitations — that laboriously built density, those tiny flecks of caramelised milk solids, the faint chew of khoya and the warm perfume of green cardamom.
What makes this recipe special is that it follows the slow method faithfully, but with practical modern guidance: exact reduction targets, visual cues for each stage, and freezing tricks that prevent the icy texture that plagues rushed versions. You will learn how to read the milk — when it has reduced enough, how the malai should look when it is ready to be folded in, and how to test sweetness before freezing (cold mutes sweetness, so the warm mixture should taste slightly sweeter than you want the finished kulfi). Master this once, and you can spin endless variations: saffron, mango, rose, even paan. But start here, with the classic, because the classic is the benchmark against which every street vendor’s kulfi in Lucknow and Delhi is still judged.
Why You’ll Love This Recipe
- Authentic slow-cooked method — no condensed milk shortcuts required (though we include one), just milk reduced the traditional way for unbeatable density and flavour.
- No ice cream maker needed — kulfi is naturally dense because the milk is pre-concentrated; all you need is a pan and kulfi moulds or kulhads.
- Perfect sliceable texture — set correctly, kulfi unmoulds in clean slices with zero ice crystals.
- Only 8 ingredients — most of them already in an Indian pantry: milk, sugar, cardamom, nuts.
- Make-ahead friendly — kulfi must be frozen at least 6–8 hours, making it the ideal dessert for dinner parties.
- Festival-worthy — serve it at Diwali, Holi, or Eid, or with falooda for a classic street-style dessert bowl.
- Customisable base — once you master the malai base, saffron, mango, and rose variations are trivial.
Key Ingredients Explained
Full-fat milk (2 litres) is the foundation and the most important choice you will make. The fat is what allows the milk to reduce into a rich, creamy base without curdling; skimmed or toned milk will thin out and taste watery no matter how long you simmer it. Buffalo milk, with its higher fat content, is the traditional choice in India and gives the most luxurious result, but good cow’s milk works beautifully too. Expect to simmer 2 litres down to roughly 700–800 ml — that concentration is the entire secret of kulfi’s density.
Khoya (100g), also called mawa, is milk that has been reduced almost to a solid. Adding crumbled khoya to the reduced milk deepens the flavour and adds body, giving the finished kulfi its characteristic slight chewiness. If khoya is unavailable, you can compensate by reducing the milk further (aim for 600 ml) and adding 2 tablespoons of milk powder, though the texture will be marginally less authentic. Homemade khoya is easy — simply reduce 1 litre of milk until it forms a soft, dough-like mass — but shop-bought unsweetened khoya is perfectly fine.
Green cardamom (8–10 pods) provides kulfi’s signature warm, floral aroma. Crush the pods and use the seeds, grinding them fresh just before adding — pre-ground cardamom loses its volatile oils within days. A pinch of saffron (10–12 strands) is optional but traditional in festive versions; it lends a golden hue and a honeyed perfume. Soak the saffron in 2 tablespoons of warm milk for 15 minutes first so the colour and flavour bloom fully.
Sugar (150g) sweetens, but it also affects freezing: sugar lowers the freezing point, so the right amount keeps kulfi firm yet sliceable rather than rock-hard. Remember that freezing dulls perceived sweetness by about 15–20%, so taste the warm mixture — it should seem just a touch sweeter than your ideal finished dessert. Pistachios and almonds (3 tablespoons each, chopped) add crunch and the classic nutty crown on each kulfi; soak them in warm water for 20 minutes and slip off the almond skins for a cleaner look and texture.
Equipment You’ll Need
- Heavy-bottomed pan or kadhai (at least 3-litre capacity) — prevents the milk from scorching during the long simmer
- Long-handled ladle or wooden spoon — for constant stirring and scraping
- Kulfi moulds with lids, or earthen kulhads, or small steel glasses — about 8 pieces
- Aluminium foil or cling film — to cover moulds before freezing
- A damp cotton cloth or hot water — for unmoulding
- Blunt skewer or popsicle sticks (optional) — if you want kulfi-on-a-stick
- 2 litres full-fat milk (whole milk; buffalo milk preferred if available)
- 100g unsweetened khoya (mawa), crumbled
- 150g sugar (3/4 cup)
- 8–10 green cardamom pods, seeds ground fresh
- 10–12 saffron strands, soaked in 2 tablespoons warm milk (optional)
- 3 tablespoons pistachios, blanched and roughly chopped
- 3 tablespoons almonds, blanched, peeled and roughly chopped
- 1 teaspoon cornflour mixed with 2 tablespoons cold milk (optional thickener)
- Set up the simmer. Pour the 2 litres of milk into a heavy-bottomed pan and bring it to a gentle boil over medium-high heat, stirring frequently so the bottom does not catch. The moment it rises, lower the heat to a steady low-medium simmer — you want lazy bubbles breaking the surface, not a rolling boil that will scorch the milk.
- Reduce and harvest the malai. Simmer the milk, stirring and scraping the bottom and sides every 5–7 minutes, for about 60–75 minutes. You will notice cream (malai) forming in sheets on the surface. Using the back of your ladle, lift each sheet and stick it to the inner walls of the pan above the milk line, letting it dry and crisp slightly. This traditional step concentrates the flavour — you will fold the malai back in later. Continue until the milk has reduced to roughly 700–800 ml, thick enough to coat the back of a spoon heavily.
- Add the khoya. Crumble the khoya into the reduced milk and stir continuously for 5–6 minutes until it melts completely into the base. If you are using the cornflour slurry, stir it in now and cook for 2 minutes more. The mixture should now be the consistency of a thick pouring custard. Scrape the dried malai sheets off the pan walls, crumble them roughly, and fold them back into the mixture.
- Sweeten and flavour. Add the sugar and stir until fully dissolved, about 2 minutes. Stir in the freshly ground cardamom and the saffron-infused milk (if using). Simmer for another 2–3 minutes, then switch off the heat. Now the crucial taste test: dip a spoon and taste — the warm mixture should taste slightly sweeter than you want the final kulfi, because freezing mutes sweetness. Adjust sugar if needed.
- Cool completely. Let the mixture cool to room temperature, stirring occasionally so no skin forms, then refrigerate for at least 1 hour until thoroughly chilled. Filling moulds with warm mixture creates ice crystals later — this cooling step is what guarantees a smooth, dense texture. Stir in half the chopped pistachios and almonds once chilled.
- Fill and freeze. Pour the chilled mixture into kulfi moulds, filling them to the top. Tap each mould gently on the counter to release trapped air bubbles. Sprinkle the remaining nuts on top, cover tightly with foil or the mould lids, and freeze for at least 6–8 hours, preferably overnight, at the coldest setting of your freezer.
- Unmould cleanly. To release a kulfi, rub the outside of the mould between your palms for 15–20 seconds, or dip it in warm water for 5 seconds (not longer, or it will melt). Invert onto a plate and gently twist — the kulfi should slide out in one smooth, glossy piece. For kulhad-style serving, simply serve in the earthen cup.
- Serve. Slice each kulfi into 2–3 discs with a sharp knife dipped in warm water. Serve immediately with a sprinkle of extra pistachios, or go street-style over falooda vermicelli with rose syrup and basil seeds for kulfi-falooda.

Pro Tips for Perfect Results
- Use a wide, heavy pan. A broad surface area speeds evaporation, and a heavy base prevents the milk from scorching during the 75-minute simmer. Thin pans are the number one cause of burnt kulfi base.
- Never walk away in the first 15 minutes. Milk boils over suddenly and violently. Stay close until the foam settles into a gentle simmer, then you can stir every few minutes.
- The spoon-coating test. Dip a metal spoon and run your finger through the coating on the back — the line should hold cleanly without the milk running back together. That is your 700 ml target.
- Chill before freezing, always. Pouring warm mixture into moulds is the main cause of icy texture. The base must be fridge-cold before it enters the freezer.
- Cover moulds airtight. Even a small air gap lets frost form on the kulfi surface. Foil pressed directly against the mixture works best.
- Freeze overnight at the coldest setting. Kulfi’s high sugar and fat content means it needs a deep, sustained freeze to set properly. Six hours is the minimum; eight to ten is ideal.
- Warm-water dip, 5 seconds only. A longer dip melts the outside and ruins the glossy finish. Five seconds, then twist and slide.
Variations to Try
- Kesar Kulfi: Double the saffron to 20–25 strands and add it with the sugar. The result is a deeper gold colour and a richer honeyed aroma — the classic wedding version.
- Mango Kulfi: Reduce the milk a little further (to 600 ml) and fold in 200g of thick alphonso mango pulp into the chilled base before freezing. The tart-sweet mango cuts the richness beautifully.
- Rose Kulfi: Add 1 tablespoon of rose water and 1 teaspoon of dried rose petals to the chilled base. Garnish with more petals — stunning and fragrant.
- Paan Kulfi: Blend 2 paan (betel) leaves with 1 tablespoon of the chilled milk mixture and a pinch of fennel seeds, strain, and fold into the base. A cooling, after-dinner specialty.
- Chocolate Kulfi: Melt 80g of dark chocolate into the hot reduced milk along with the sugar. A modern café-style twist that children love.
Serving Suggestions
The classic presentation is sliced kulfi discs on a chilled plate, dusted with crushed pistachios — simple and lets the texture shine. For a street-food experience, serve it as kulfi-falooda: layer cooked falooda vermicelli and soaked basil (sabja) seeds in a tall glass, add kulfi slices, drizzle with rose syrup, and finish with chopped nuts. At festive dinners, try pairing saffron kulfi with warm gulab jamun — the hot-cold contrast is unforgettable. Kulfi also loves company: a small piece of malai kulfi alongside a slice of carrot halwa or a bowl of shahi tukda turns dessert into an occasion. Keep servings modest — one kulfi per person is rich enough, thanks to the concentrated milk.
Storage and Reheating
Kulfi keeps beautifully in the freezer for up to 3 weeks when the moulds are wrapped tightly in cling film and then foil — double wrapping prevents freezer odours from seeping in. Do not refreeze a kulfi that has fully melted; the texture will turn grainy. There is no reheating involved, of course, but there is a serving trick: move kulfi from the freezer to the fridge for 10 minutes before unmoulding so the slices come out clean and the texture softens just enough to be creamy rather than rock-hard. If you made a large batch in a single container instead of moulds, cut portions with a hot, dry knife and return the rest immediately to the freezer.
Frequently Asked Questions
How is kulfi different from regular ice cream?
Ice cream is made by churning a custard or cream base to incorporate air, which gives it a light, scoopable texture. Kulfi is made by simmering milk down to a dense concentrate and freezing it without churning, so it sets solid and is served in slices. It is denser, richer, and has a distinct caramelised-milk flavour from the slow reduction.
My kulfi turned out icy. What went wrong?
Iciness comes from one of three mistakes: the milk was not reduced enough (water content too high), the mixture went into moulds while still warm, or the freezer was not cold enough. Make sure the milk reduces to roughly one-third of its volume, chill the base thoroughly before freezing, and freeze overnight at the coldest setting.
Can I make kulfi without khoya?
Yes. Simply reduce the milk further — down to about 600 ml instead of 700–800 ml — and add 2 tablespoons of full-cream milk powder for extra body. The texture will be slightly less chewy but still deliciously dense.
What can I use if I don’t have kulfi moulds?
Small steel tumblers, earthen kulhads, disposable paper cups, or even a loaf tin lined with cling film all work. For paper cups, cover with foil and poke a popsicle stick through the centre before freezing for easy handling.
Why did my milk split or curdle during simmering?
Curdling usually happens when the milk was already slightly sour, or when acidic ingredients (like some saffron extracts or lemon) are added to hot milk. Use fresh milk, keep the heat at a gentle simmer rather than a boil, and add saffron only after soaking it in warm milk.
How do I know when the milk is reduced enough?
Use the spoon-coating test: the reduced milk should coat the back of a spoon thickly, and a line drawn with your finger through the coating should hold without filling back in. Visually, 2 litres reduced to about 700–800 ml fills roughly two and a half standard teacups.
There is something deeply satisfying about serving a dessert that took an afternoon of patient simmering and tastes like it. Malai kulfi is not fast food — it is a reminder that some of the finest flavours on earth come from nothing more than milk, time, and attention. Make it for the people you love, slice it slowly, and watch it disappear even faster than the hours it took to make.
