Choose a new cookbook worth up to £28 when you subscribe to our magazine.
Make the marinade. Blitz 1 halved shallot, 4 garlic cloves, 4 cherry tomatoes, 2 anchovies, ½ tsp toasted cumin seeds, ½ tsp toasted coriander seeds, ½ tsp pink peppercorns, 2 tbsp rosemary leaves, leaves from 1 thyme sprig, chopped leaves from a small bunch mint, 70ml white wine, 4 tbsp olive oil, 1 tbsp brown sugar and zest of juice of 1 lemon in a food processor.
Pierce 2kg lamb shoulder all over with a sharp knife, put it in a large roasting tin and slather the marinade onto the meat, coating thoroughly.
Cover with cling film and leave in the fridge for at least 3 hrs, preferably overnight.
Take the lamb out of the fridge at least half an hour before you cook it to bring it to room temperature. Heat oven to 160C/140C fan/gas 3.
Put 3 onions, each sliced into 3 thick disks, in the roasting tin, resting the lamb on top. Cover with tented foil and roast for 5 hrs, basting the meat occasionally.
Remove from the oven, transfer the lamb to a board and allow to rest, covered, for at least 30 mins.
Return the tin of onions and marinating juices to the oven to keep warm.
Combine zest ½ lemon, 1 crushed garlic clove and 1 tbsp finely chopped mint in a bowl.
Pull the lamb apart with forks and serve with the roasted onions and gremolata scattered over.
Skim off any fat from the juices and serve alongside the lamb.
You can use the leftover meat in Rosie's lamb shoulder flatbread recipe (see 'goes well with').