Massaman Beef Curry

A classic Thai massaman curry with beef — large chunks of chuck braised slowly in a rich, deep-brown coconut sauce warmed with cinnamon, cardamom and star anise, finished with baby potatoes, pearl onions and peanuts and served with jasmine rice, the key being a long, gentle braise. Holding the curry at a low, steady simmer for well over an hour, rather than boiling it to speed things up, is the technique this whole curry depends on for beef that breaks under a spoon yet holds its shape — a hard boil tightens the meat and can split the coconut milk, the same low-and-slow-braise principle used elsewhere in this collection whenever a tough, collagen-rich cut has to turn tender in liquid. Browning the beef in two batches before the braise is what gives the sauce its savoury depth and the meat its caramelised edges instead of grey, steamed surfaces. Adding the potatoes and pearl onions only once the beef has had its head start is what keeps them tender and whole rather than collapsing into the sauce. The payoff is a curry with real, rounded warmth — fork-tender beef, creamy potatoes and soft pearl onions in a thick, spoonable sauce that tastes gently sweet, savoury and lightly tangy, finished with crunchy peanuts.

Massaman Beef Curry showing fork-tender beef chunks, baby potatoes and pearl onions in a deep-brown coconut sauce with crushed peanuts, cilantro and jasmine rice, on marble surface

Prep Time : 25 min

Total Time : 2 hr 50 min

Servings : 4

Prep Time :

25 min

Total Time :

2 hr 50 min

Servings :

4

Ingredients

For the Beef


• 600g beef chuck or stewing beef, cut into large bite-size chunks


• 1 tsp fine salt


• ½ tsp black pepper


• 1 tbsp neutral oil

For the Curry Base


• 800ml full-fat coconut milk, divided


• 4–5 tbsp massaman curry paste


• 4 garlic cloves, minced


• 20g fresh ginger, sliced


• 350–450ml beef stock or water, divided


• 2 tbsp fish sauce, plus a little more to taste


• 1½–2 tbsp palm sugar or light brown sugar


• 1–1½ tbsp tamarind concentrate


• 1 cinnamon stick


• 4 green cardamom pods, lightly crushed


• 1 star anise


• 1 bay leaf, optional

For the Potatoes, Onions and Peanuts


• 500g baby potatoes, halved if medium, left whole if very small


• 200g pearl onions, peeled


• 40g roasted unsalted peanuts

For the Jasmine Rice


• 200g jasmine rice


• 300ml water


• A pinch of fine salt, optional

For the Garnish


• 3–4 tbsp crushed roasted peanuts


• 1 small handful cilantro leaves


Directions

  1. Prep the Beef and Vegetables
    Cut the 600g beef chuck into large bite-size chunks, about 4cm, if it is not already cut, trimming away any thick outer fat but leaving the internal marbling. Pat the pieces genuinely dry with kitchen paper. Cover the 200g pearl onions with just-boiled water for 1–2 minutes, drain, then trim the root ends and slip off the skins, leaving the onions whole. Halve the baby potatoes if medium and leave very small ones whole, so every piece is roughly the same size. Mince the 4 garlic cloves, slice the 20g ginger, crush the garnish peanuts if they are still whole and pick the cilantro leaves. That thorough setup matters because dry beef browns instead of steaming, and even-sized potatoes cook through at the same rate in the braise.
  2. Brown the Beef
    Season the beef all over with the 1 tsp fine salt and ½ tsp black pepper. Heat the 1 tbsp neutral oil in a heavy pot or Dutch oven over medium-high heat until it shimmers. Add half the beef in a single layer, with space between the pieces, and sear for 2–3 minutes per side without moving it, until deep brown on at least two sides. Lift it onto a plate, then brown the second batch the same way, about 10–12 minutes in total. Do not overcrowd the pot: packed pieces release water and turn grey instead of browning. If the oil starts to smoke hard, lower the heat slightly. That proper sear is what builds the browned edges and savoury fond that give the finished curry its depth.
  3. Fry the Massaman Paste
    Lower the heat to medium and pour about 200ml of the coconut milk into the pot, scraping up the browned bits from the base as it bubbles. Simmer for 2–3 minutes, stirring, until it thickens slightly and looks glossy. Add 4 tbsp massaman curry paste, or up to 5 tbsp for a stronger curry, and fry for 2–4 minutes, stirring constantly, until it smells fragrant, darkens slightly and begins to release its oil. Add the minced garlic and sliced ginger and cook for 30 seconds more. If the paste catches on the bottom, lower the heat and loosen it with a spoonful of the remaining coconut milk. That frying stage is what cooks out the paste’s raw, harsh edge, since under-fried paste leaves the finished curry tasting flat.
  4. Build the Braise
    Return the browned beef and any juices from the plate to the pot. Add the remaining 600ml coconut milk, 350ml of the beef stock or water, the 2 tbsp fish sauce, 1½ tbsp palm sugar, 1 tbsp tamarind concentrate, the cinnamon stick, crushed cardamom pods, star anise and the bay leaf, if using. Stir in the 40g roasted peanuts. Bring just to a gentle simmer over medium heat, about 5 minutes, then reduce the heat to low, partially cover and cook for 1 hour 15 minutes–1 hour 30 minutes, stirring occasionally. Small, lazy bubbles should break at the surface, never a rolling boil. By the end the beef should be starting to soften but still offer some resistance. That low, steady simmer is what lets the collagen in the chuck melt slowly without tightening the meat or splitting the coconut milk.
  5. Add the Potatoes and Pearl Onions
    Add the baby potatoes and peeled pearl onions and stir gently to coat them, pushing them below the surface of the sauce. Continue simmering, partially covered, for 25–35 minutes, until the potatoes are fully tender when pierced with a knife, the pearl onions are soft but still holding their shape and the beef is fork-tender. If the sauce thickens too much or begins to catch on the bottom, add the remaining stock or water, up to 100ml, a little at a time, so the curry stays loose enough to braise. Stir gently from the bottom so the potatoes stay whole. That timing is what lets the potatoes and beef reach tenderness together, rather than the potatoes overcooking into the sauce before the beef is genuinely ready.
  6. Cook the Jasmine Rice
    As soon as the potatoes go into the curry, rinse the 200g jasmine rice in cold water, swirling it with your fingers, until the water runs mostly clear, then drain it well. Combine the rice and 300ml water in a small saucepan with a pinch of salt, if using, and bring to a boil over medium-high heat. Cover tightly, reduce to the lowest heat and cook for 12 minutes. Turn off the heat and leave it to rest, still covered, for 10 minutes, without lifting the lid, so it is ready just as the curry finishes. Fluff it gently with a fork just before serving. That undisturbed rest is what lets the trapped steam finish the grains evenly, so they come out separate and fluffy rather than sticky or scorched.
  7. Reduce and Season the Curry
    Remove the lid and simmer for 5–10 minutes more, until the sauce is rich and thick but still spoonable and has turned a deep brown. Take out the cinnamon stick, star anise and bay leaf, along with any cardamom pods you can easily spot. Taste and adjust: add a little more fish sauce for salt and savouriness, up to ½ tbsp more palm sugar if it needs roundness and up to ½ tbsp more tamarind if it needs brightness. The finished curry should taste gently sweet, savoury and lightly tangy, aromatic rather than aggressively hot. Press a piece of beef with a spoon: it should break easily but still hold its chunk shape. That final uncovered simmer is what concentrates the sauce to the right body — thicker than a Thai red curry, yet looser than a Western stew gravy.
  8. Serve
    Divide the fluffed rice among 4 bowls, placing it to one side, about 50g of dry rice per serving. Spoon the massaman curry beside it, giving each bowl about 150g of beef by raw weight, an even share of potatoes and pearl onions and plenty of sauce. Scatter the 3–4 tbsp crushed peanuts and the cilantro leaves over the curry. The sauce should sit glossy and deep brown against the white rice, with the potatoes and onions still whole. Serve hot. That finishing scatter is what adds genuine crunch and a fresh herbal lift against the soft beef and the rich, spiced sauce.

*Notes : 

  • The low, steady braise deserves genuine recognition as the technique most directly responsible for whether the beef turns fork-tender or tight and stringy. The recipe’s own critical point to “Keep it at a low steady simmer, never a hard boil” reflects how chuck needs well over an hour of gentle heat for its collagen to melt into gelatin — a fast boil squeezes the muscle fibres dry and can split the coconut milk.
  • Browning the beef in two batches deserves the same attention this technique receives throughout this collection’s other braised meat dishes, because it sets the depth of the whole sauce. The recipe’s own instruction, “Do not overcrowd the pot,” matters because packed pieces drop the pan temperature and release water, so they steam grey rather than building the browned edges and fond that later dissolve into the curry.
  • Adding the potatoes and pearl onions late deserves genuine respect as the detail most directly responsible for whether they arrive whole or collapse into the sauce. The recipe’s own warning to “Add the potatoes only once the beef has had a head start” reflects simple arithmetic: potatoes need 25–35 minutes, while the chuck needs nearly two hours, so adding them together leaves mushy potatoes around still-firm beef.
  • The spoon-pressure test deserves attention as a genuine, checkable readiness cue rather than a loose approximation of time. Chuck varies in thickness and connective tissue from one piece to the next, so pressing a chunk with a spoon — it should break easily yet still hold its shape — tells you far more reliably than the clock when the braise is done.

Why This Recipe Works

This recipe works because it builds flavour in stages and then gives the beef the time it genuinely needs. Browning the chuck in two batches creates savoury, caramelised edges, and frying the massaman paste in thickened coconut milk cooks out its raw harshness before any liquid dilutes it. A long, low braise with cinnamon, cardamom, star anise, tamarind and peanuts then melts the beef’s collagen while the sauce absorbs its warm spice. The potatoes and pearl onions join only for the last stretch, so everything finishes tender at once, and a short uncovered simmer leaves the sauce thick, glossy and spoonable.


Ingredient Breakdown

Low, Steady Braise

The critical technique — gentle heat melts the chuck’s collagen slowly, turning it fork-tender without tightening the meat or splitting the sauce.

Browning in Two Batches

The critical technique — searing with space between the pieces builds browned edges and fond instead of grey, steamed meat.

Fried Massaman Paste

The core flavour-building stage — fried in thickened coconut milk, it loses its raw smell and turns deeply aromatic.

Beef Chuck (Not Steak Cuts)

The critical ingredient choice — its collagen softens over the long braise into rich, tender chunks that lean steak cannot match.

Potatoes Added Late

The critical timing technique — joining after the beef’s head start, they finish tender alongside it rather than collapsing into the sauce.

Whole Spices and Tamarind

The defining flavour ingredients — cinnamon, cardamom and star anise add warmth, while tamarind brings a gentle tang against the richness.

Peanuts Two Ways

The finishing touch — simmered peanuts round out the sauce, while crushed peanuts scattered on top add genuinely visible crunch.


Flavor Structure Explained 

This massaman beef curry follows a layered balance model:

  • Soft, neutral foundation (jasmine rice)
  • Rich, savoury centrepiece (browned beef chuck, fish sauce)
  • Creamy, nutty body (full-fat coconut milk, simmered peanuts, baby potatoes)
  • Warm, spiced core (fried massaman paste, cinnamon, cardamom, star anise, ginger, garlic)
  • Sweet-tangy balance (palm sugar, tamarind, pearl onions)
  • Fresh, crunchy finish (crushed peanuts, cilantro)

Jasmine rice gives the curry a soft, neutral foundation that soaks up the sauce. Fork-tender chuck seasoned with fish sauce forms the rich, savoury centrepiece, while coconut milk, simmered peanuts and potatoes build a creamy, nutty body. The fried massaman paste and whole spices supply the warm, spiced core, and palm sugar, tamarind and sweet pearl onions keep it balanced. Crushed peanuts and cilantro add the fresh, crunchy finish that ties this massaman beef curry together.


Common Mistakes to Avoid 

  • Boiling the Curry Hard – This tightens the beef into dry, stringy chunks and can split the coconut milk. Always keep it at a low, steady simmer with small, lazy bubbles.
  • Crowding the Pot When Browning – This drops the heat so the beef releases water and steams grey. Always brown it in two batches with space between the pieces.
  • Under-Frying the Massaman Paste – This leaves the curry tasting flat and harsh, with a raw spice edge. Always fry it for 2–4 minutes until fragrant and slightly darker.
  • Adding the Potatoes With the Beef – This overcooks them into the sauce long before the beef turns tender. Always add them after the beef has braised for 1 hour 15 minutes–1 hour 30 minutes.
  • Using a Quick-Cooking Steak Cut – This leaves lean meat dry and grainy after a long braise. Always choose chuck, brisket or boneless short rib, which soften as their collagen melts.

Variations

Short Rib Version

Swap the chuck for 600g boneless short rib, per the recipe’s own note that brisket or boneless short rib also work, for a richer, more marbled curry with the same braising time.

Milder Version

Start with 4 tbsp massaman curry paste and lean toward the full 2 tbsp palm sugar for a gentler, rounder curry that still carries the genuine warmth of cinnamon, cardamom and star anise.

Chicken Version

Replace the beef with 600g boneless chicken thighs cut into large chunks, browning them briefly and braising them for only 20 minutes before the potatoes go in, so the meat stays juicy.

Oven-Braised Version

Bring the curry to a gentle simmer, then transfer the pot, lid slightly ajar, to a 160°C / 320°F oven for the same braising time, for steadier all-round heat with less risk of catching.


Storage & Make-Ahead

Massaman curry pastes vary widely in heat, sweetness and salt between brands, so taste a little of yours before cooking and start with 4 tbsp, adding the fifth only if the paste is mild.

The beef can be cut, dried and refrigerated, and the pearl onions blanched and peeled, up to a day ahead, which shortens the cooking day to little more than browning the beef and starting the braise.

This curry genuinely improves after resting, per the recipe’s own note, so it can be made a day ahead, cooled within 2 hours and refrigerated in a covered container overnight before reheating.

Store leftover curry and rice in separate airtight containers in the fridge for up to 3 days, cooling the rice quickly and refrigerating it within an hour, since cooked rice should never sit warm for long.

Reheat the curry gently over low heat, covered, until it is steaming throughout, adding a splash of water if it has thickened overnight, and reheat the rice separately with a sprinkle of water until piping hot.


Frequently Asked Questions

Why is the massaman paste fried in coconut milk before the beef goes back in?

Frying the paste in thickened coconut milk cooks out its raw, harsh aromatics and releases fat-soluble flavour and colour. Stirred straight into the full braising liquid, it would only stew and leave the curry tasting genuinely flat.

Why does the beef need such a long braise before the potatoes go in?

Beef chuck is rich in collagen, which only melts into gelatin after a long stretch of gentle heat. The 1 hour 15 minutes–1 hour 30 minutes head start softens the beef so it and the potatoes finish tender together.

Why should the curry never boil hard while it braises?

A hard boil contracts the beef’s muscle fibres faster than its collagen can melt, squeezing them dry and stringy. It also agitates the coconut milk until its fat separates, leaving the sauce greasy and broken rather than smooth.

Why are peanuts simmered in the sauce and also scattered on top?

Peanuts simmered for well over an hour soften and give the sauce the rounded, nutty body that is classic for massaman. They lose their crunch, though, so crushed peanuts scattered at the end supply the visible texture.

Are there other classic Southeast Asian curry or rice dishes worth trying?

Indonesian Beef Rendang offers another classic beef curry direction worth exploring. Thai Green Curry Chicken and Thai Red Curry Shrimp are also worth trying for other Thai curry directions, and Coconut Rice and Vietnamese Chicken Curry / Ca Ri Ga offer other rice and curry dishes worth exploring.



Nutrition Facts 

( Per Serving )

Calories

~1210 kcal

Protein

44 g

Fat

77 g

Carbs

85 g

Calories

~1210 kcal

Protein

44 g

Fat

77 g

Carbs

85 g

Related Recipes

Related Recipes


You might also like

You might also like


Massaman Beef Curry showing fork-tender beef chunks, baby potatoes and pearl onions in a deep-brown coconut sauce with crushed peanuts, cilantro and jasmine rice, on marble surface

Massaman Beef Curry

A classic Thai massaman curry with beef — large chunks of chuck braised slowly in a rich, deep-brown coconut sauce warmed with cinnamon, cardamom and star anise, finished with baby potatoes, pearl onions and peanuts and served with jasmine rice, the key being a long, gentle braise. Holding the curry at a low, steady simmer for well over an hour, rather than boiling it to speed things up, is the technique this whole curry depends on for beef that breaks under a spoon yet holds its shape — a hard boil tightens the meat and can split the coconut milk, the same low-and-slow-braise principle used elsewhere in this collection whenever a tough, collagen-rich cut has to turn tender in liquid. Browning the beef in two batches before the braise is what gives the sauce its savoury depth and the meat its caramelised edges instead of grey, steamed surfaces. Adding the potatoes and pearl onions only once the beef has had its head start is what keeps them tender and whole rather than collapsing into the sauce. The payoff is a curry with real, rounded warmth — fork-tender beef, creamy potatoes and soft pearl onions in a thick, spoonable sauce that tastes gently sweet, savoury and lightly tangy, finished with crunchy peanuts.
Prep Time 25 minutes
Cook Time 2 hours 25 minutes
Total Time 2 hours 50 minutes
Servings: 4
Course: Main Course
Cuisine: Thai
Calories: 1210

Ingredients
  

For the Beef
  • 600 g beef chuck or stewing beef cut into large bite-size chunks
  • 1 tsp fine salt
  • ½ tsp black pepper
  • 1 tbsp neutral oil
For the Curry Base
  • 800 ml full-fat coconut milk divided
  • 4–5 tbsp massaman curry paste
  • 4 garlic cloves minced
  • 20 g fresh ginger sliced
  • 350–450 ml beef stock or water divided
  • 2 tbsp fish sauce plus a little more to taste
  • 1½–2 tbsp palm sugar or light brown sugar
  • 1–1½ tbsp tamarind concentrate
  • 1 cinnamon stick
  • 4 green cardamom pods lightly crushed
  • 1 star anise
  • 1 bay leaf optional
For the Potatoes, Onions and Peanuts
  • 500 g baby potatoes halved if medium, left whole if very small
  • 200 g pearl onions peeled
  • 40 g roasted unsalted peanuts
For the Jasmine Rice
  • 200 g jasmine rice
  • 300 ml water
  • A pinch of fine salt optional
For the Garnish
  • 3–4 tbsp crushed roasted peanuts
  • 1 small handful cilantro leaves

Method
 

Prep the Beef and Vegetables
  1. Cut the 600g beef chuck into large bite-size chunks, about 4cm, if it is not already cut, trimming away any thick outer fat but leaving the internal marbling. Pat the pieces genuinely dry with kitchen paper. Cover the 200g pearl onions with just-boiled water for 1–2 minutes, drain, then trim the root ends and slip off the skins, leaving the onions whole. Halve the baby potatoes if medium and leave very small ones whole, so every piece is roughly the same size. Mince the 4 garlic cloves, slice the 20g ginger, crush the garnish peanuts if they are still whole and pick the cilantro leaves. That thorough setup matters because dry beef browns instead of steaming, and even-sized potatoes cook through at the same rate in the braise.
Brown the Beef
  1. Season the beef all over with the 1 tsp fine salt and ½ tsp black pepper. Heat the 1 tbsp neutral oil in a heavy pot or Dutch oven over medium-high heat until it shimmers. Add half the beef in a single layer, with space between the pieces, and sear for 2–3 minutes per side without moving it, until deep brown on at least two sides. Lift it onto a plate, then brown the second batch the same way, about 10–12 minutes in total. Do not overcrowd the pot: packed pieces release water and turn grey instead of browning. If the oil starts to smoke hard, lower the heat slightly. That proper sear is what builds the browned edges and savoury fond that give the finished curry its depth.
Fry the Massaman Paste
  1. Lower the heat to medium and pour about 200ml of the coconut milk into the pot, scraping up the browned bits from the base as it bubbles. Simmer for 2–3 minutes, stirring, until it thickens slightly and looks glossy. Add 4 tbsp massaman curry paste, or up to 5 tbsp for a stronger curry, and fry for 2–4 minutes, stirring constantly, until it smells fragrant, darkens slightly and begins to release its oil. Add the minced garlic and sliced ginger and cook for 30 seconds more. If the paste catches on the bottom, lower the heat and loosen it with a spoonful of the remaining coconut milk. That frying stage is what cooks out the paste’s raw, harsh edge, since under-fried paste leaves the finished curry tasting flat.
Build the Braise
  1. Return the browned beef and any juices from the plate to the pot. Add the remaining 600ml coconut milk, 350ml of the beef stock or water, the 2 tbsp fish sauce, 1½ tbsp palm sugar, 1 tbsp tamarind concentrate, the cinnamon stick, crushed cardamom pods, star anise and the bay leaf, if using. Stir in the 40g roasted peanuts. Bring just to a gentle simmer over medium heat, about 5 minutes, then reduce the heat to low, partially cover and cook for 1 hour 15 minutes–1 hour 30 minutes, stirring occasionally. Small, lazy bubbles should break at the surface, never a rolling boil. By the end the beef should be starting to soften but still offer some resistance. That low, steady simmer is what lets the collagen in the chuck melt slowly without tightening the meat or splitting the coconut milk.
Add the Potatoes and Pearl Onions
  1. Add the baby potatoes and peeled pearl onions and stir gently to coat them, pushing them below the surface of the sauce. Continue simmering, partially covered, for 25–35 minutes, until the potatoes are fully tender when pierced with a knife, the pearl onions are soft but still holding their shape and the beef is fork-tender. If the sauce thickens too much or begins to catch on the bottom, add the remaining stock or water, up to 100ml, a little at a time, so the curry stays loose enough to braise. Stir gently from the bottom so the potatoes stay whole. That timing is what lets the potatoes and beef reach tenderness together, rather than the potatoes overcooking into the sauce before the beef is genuinely ready.
Cook the Jasmine Rice
  1. As soon as the potatoes go into the curry, rinse the 200g jasmine rice in cold water, swirling it with your fingers, until the water runs mostly clear, then drain it well. Combine the rice and 300ml water in a small saucepan with a pinch of salt, if using, and bring to a boil over medium-high heat. Cover tightly, reduce to the lowest heat and cook for 12 minutes. Turn off the heat and leave it to rest, still covered, for 10 minutes, without lifting the lid, so it is ready just as the curry finishes. Fluff it gently with a fork just before serving. That undisturbed rest is what lets the trapped steam finish the grains evenly, so they come out separate and fluffy rather than sticky or scorched.
Reduce and Season the Curry
  1. Remove the lid and simmer for 5–10 minutes more, until the sauce is rich and thick but still spoonable and has turned a deep brown. Take out the cinnamon stick, star anise and bay leaf, along with any cardamom pods you can easily spot. Taste and adjust: add a little more fish sauce for salt and savouriness, up to ½ tbsp more palm sugar if it needs roundness and up to ½ tbsp more tamarind if it needs brightness. The finished curry should taste gently sweet, savoury and lightly tangy, aromatic rather than aggressively hot. Press a piece of beef with a spoon: it should break easily but still hold its chunk shape. That final uncovered simmer is what concentrates the sauce to the right body — thicker than a Thai red curry, yet looser than a Western stew gravy.
Serve
  1. Divide the fluffed rice among 4 bowls, placing it to one side, about 50g of dry rice per serving. Spoon the massaman curry beside it, giving each bowl about 150g of beef by raw weight, an even share of potatoes and pearl onions and plenty of sauce. Scatter the 3–4 tbsp crushed peanuts and the cilantro leaves over the curry. The sauce should sit glossy and deep brown against the white rice, with the potatoes and onions still whole. Serve hot. That finishing scatter is what adds genuine crunch and a fresh herbal lift against the soft beef and the rich, spiced sauce.

Notes

The low, steady braise deserves genuine recognition as the technique most directly responsible for whether the beef turns fork-tender or tight and stringy. The recipe’s own critical point to “Keep it at a low steady simmer, never a hard boil” reflects how chuck needs well over an hour of gentle heat for its collagen to melt into gelatin — a fast boil squeezes the muscle fibres dry and can split the coconut milk.
Browning the beef in two batches deserves the same attention this technique receives throughout this collection’s other braised meat dishes, because it sets the depth of the whole sauce. The recipe’s own instruction, “Do not overcrowd the pot,” matters because packed pieces drop the pan temperature and release water, so they steam grey rather than building the browned edges and fond that later dissolve into the curry.
Adding the potatoes and pearl onions late deserves genuine respect as the detail most directly responsible for whether they arrive whole or collapse into the sauce. The recipe’s own warning to “Add the potatoes only once the beef has had a head start” reflects simple arithmetic: potatoes need 25–35 minutes, while the chuck needs nearly two hours, so adding them together leaves mushy potatoes around still-firm beef.
The spoon-pressure test deserves attention as a genuine, checkable readiness cue rather than a loose approximation of time. Chuck varies in thickness and connective tissue from one piece to the next, so pressing a chunk with a spoon — it should break easily yet still hold its shape — tells you far more reliably than the clock when the braise is done.