Preheat the oven to 180°C (160° fan-forced). Line 2 roasting tins with baking paper.
Place lamb in centre of one of the prepared roasting tins. Using a small, sharp knife make incisions over lamb and press garlic into holes. In a small bowl combine 2 tbsp oil, lemon zest and juice and rosemary. Drizzle marinade over lamb, season and pour stock around the base. Cook lamb, uncovered, for 30 minutes. Cover with foil and cook for a further 3-3 ½ hours or until meat is tender and falling off the bone, adding a little more stock during the cooking time, if necessary. Remove from oven and rest covered loosely in foil.
Meanwhile, increase oven heat to 200°C (180° fan-forced). Spread potatoes, cauliflower and pumpkin onto remaining tray, drizzle with remaining oil, season and toss to coat. Cook vegetables for 25-30 minutes, or until golden and tender.
Serve lamb with roast vegetables, spinach and beans. Drizzle with pan juices and garnish with extra rosemary.
Leftover lamb is delicious in tacos (serve with lettuce, tomato, grated cheese and taco sauce), with your favourite pasta and sauce or shredded into a minestrone soup.
Add brussels sprouts, turnips or parsnips to the potatoes for extra vegetables that can be used in a lamb salad the next day.