Heat half the oil in a large, heavy-based casserole dish and cook the lamb, in batches, for 3–4 minutes until browned, then remove with a slotted spoon and set aside.
Add the remaining oil to the dish and add the onions. Cook over a medium heat for 10–12 minutes, stirring often, until soft and lightly browned.
Add the garlic, ginger, cinnamon and cardamom pods. Stir-fry for 1–2 minutes and then add the curry paste and lamb. Stir-fry for 2–3 minutes and then stir in the tomatoes, tomato purée, sugar, stock and potatoes. Season well and bring to the boil.
Reduce the heat, cover and simmer very gently (using a heat diffuser if possible) for 2–2½ hours or until the lamb is tender. Remove from the heat and serve garnished with chopped fresh coriander and drizzled with yogurt, if liked.
For baked lamb curry on the hob, once you have added the tomatoes and potatoes, transfer the dish to a preheated oven at 140°C (275°F), Gas Mark 1 and cook for about 3 hours.