To begin, finely chop the parsley and mint, keeping the herbs fresh and vibrant. Heat 2 tablespoons of oil in a wide pan and gently fry the herbs over medium heat until fragrant and darkened slightly. Stir continuously to prevent burning, then set aside to use later in the stew.
In a heavy based pot, heat the remaining oil over medium heat. Add the chopped onion and cook until soft and lightly golden. Stir in the turmeric, then add the lamb pieces and brown them evenly on all sides to build a deep base flavour before moving to the next step.
Season the meat with salt and black pepper, stirring well to coat each piece. Allow the lamb to cook for a few minutes until the spices bloom and the surface of the meat is well sealed, then prepare to add liquid.
Pour in the water and bring the pot to a gentle boil. Skim any foam from the surface, then reduce the heat, cover, and let the meat simmer slowly for 45 minutes, allowing it to soften gradually.
While the meat cooks, lightly sauté the chopped celery in a separate pan with a small splash of oil. Cook until slightly softened but still green, which preserves its flavour and texture before adding it to the stew.
Add the sautéed celery and the fried herb mixture to the pot. Stir gently so the ingredients remain intact, then continue cooking to allow the flavours to merge.
Pierce the dried limes with a knife and add them to the stew. Press them lightly with a spoon once softened to release their tangy aroma. Cover and simmer for a further 45 minutes until the stew thickens and the lamb is tender.
Check the seasoning, adjusting salt or sourness as needed. If a sharper flavour is preferred, gently crack one dried lime further and stir the liquid before continuing to the final stage.
Remove the pot from the heat and let the stew rest for 10 minutes. Serve Khoresh Karafs hot alongside steamed basmati rice, allowing the stew to be spooned generously over the rice for balance and contrast.