Indian techniques · intermediate
Slow-cooked gravy
Also: slow-simmered curry, nihari-style cooking
Building a curry by long, gentle simmering so meat, bones, lentils or spices melt into a rich, cohesive gravy.
What it is
Many Indian dishes, such as nihari, paya, haleem, dal makhani, rogan josh and Kerala beef curry, depend on hours of gentle simmering after the initial bhunao. Liquid is added in stages, the pot is kept at a lazy bubble, and the gravy thickens with dissolved gelatin, broken-down lentils or reduced onions.
Why cooks use it: Time breaks down tough meat and bones, dissolves gelatin and starch into the liquid for body, and lets spices mellow and merge. The result tastes rounder and richer than a quick curry.
The science
Collagen in shanks, trotters and bony cuts turns to gelatin over hours above about 70 °C, giving a gravy that coats a spoon and sets when chilled. Pulses such as whole urad break down and release starch. Slow evaporation concentrates flavour without scorching.
How proteins set when cookedStarch gelatinisationEvaporation and reductionEmulsionsAroma compounds and flavourChanging texture: tenderising and crisping
Step by step
Complete the bhunao: fry the onion-spice base and sear the meat in it until the oil separates.
Add hot water or stock to just cover; hot liquid keeps the cooking going and does not shock the meat.
Bring to a boil, then lower to the gentlest simmer and cover partly.
Stir and scrape every 15–20 minutes; top up with hot water if it thickens too early.
Cook until the meat is meltingly tender or the dal is creamy (1.5–6 hours depending on the dish).
Finish: adjust salt, add garam masala, cream, butter or a tadka, and fresh ginger, coriander or lemon as the dish requires.
Heat and timing
- Slow-cooked gravy 85–96 °C · A slow, steady simmer with small bubbles.
Time: 1.5–3 hours for goat curry; 4–8 hours for nihari or overnight dal makhani (shorter in a pressure cooker).
How you know it’s right
- Gravy coats the back of a spoon
- A thin layer of red-tinged fat on the surface
- Meat falls from the bone
- Dal turns creamy and homogenous
Common mistakes
- Boiling hard so meat toughens and fat emulsifies into a greasy gravy
- Adding cold water to a hot curry
- Adding garam masala at the start (its aroma fades)
- Letting thick gravies catch on the base
Troubleshooting
- Gravy greasy
- Skim surface fat, or chill and lift it off; simmer more gently next time.
- Gravy thin
- Simmer uncovered to reduce, or add a spoon of toasted atta mixed with water (as in nihari) and simmer 10 minutes.
- Meat still tough
- Keep simmering, or finish in a pressure cooker for 10–15 minutes.
Restaurant DNA
How professionals do it
Restaurants known for nihari or dal makhani commonly cook large batches slowly overnight or over many hours, often on very low gas or embers, and serve from the pot through the day.
At home
A heavy Dutch oven in a 140–150 °C oven, or a slow cooker after a proper stovetop bhunao, holds the gentle heat these dishes need.
General professional practice — not any particular restaurant’s recipe.
Food safety
- Cool large batches quickly in shallow containers and refrigerate within 2 hours; reheat until steaming hot (at least 75 °C) throughout.
Practise it

Beef nihari
Pakistani · 4 h 40 min · 375 kcal
Beef stifado
Greek · 3 h 10 min · 463 kcal
Bunny chow
South African · 2 h · 1074 kcalChile con queso
Tex-Mex · 25 min · 240 kcal · Vegetarian
Domoda
Gambian · 1 h 45 min · 432 kcalFesenjan
Iranian · 2 h 15 min · 663 kcal
Galbi-jjim
Korean · 2 h 40 min · 599 kcal
Ghormeh sabzi
Iranian · 3 h 30 min · 457 kcalJota (sauerkraut and bean stew)
Slovenian · 1 h 35 min · 346 kcal
14 more
- Kak'ik · Guatemalan
- Krupnik · Polish
- Lu rou fan (Taiwanese braised pork rice) · Taiwanese
- Matzo ball soup · American
- Phở gà · Vietnamese
- Red-braised pork belly · Chinese
- Sancocho panameño · Panamanian
- Sauce tomate (classical tomato sauce) · French
- Scotch broth · British
- Selsko meso (village-style pork) · Macedonian
- Stuffat tal-fenek · Maltese
- Tomato beef noodle soup · Chinese
- Vori vori · Paraguayan
- Zereshk polo ba morgh · Iranian