Start by washing the lamb and rubbing it with salt. Wash off the salt and place on the stove top and cover with water. Allow it to come to a boil for 10 minutes and skim off any foam that forms.
Once the foam is skimmed off, add the whole spices and salt, cover the pot and allow it to cook at a low rolling boil for 1-2 hours. Check the water periodically and add more as needed to ensure the lamb is fully covered.
If you are using a full lamb shoulder, you will need to rotate it (since it won't fit fully in an average sized pot) and this will double the cooking time.
If you are using a pressure cooker, place the lamb in the pressure cooker (or instant pot) and cover with water. Boil for 10 minutes, skim off the foam, then add the salt and whole spices. Pressure cook for 45 minutes.
For both methods, ensure the lamb is tender before moving to the next step. It will continue to roast so it doesn't need to be falling off the bone, but sufficiently tender.
Remove the lamb and place it in an oven safe dish. Strain the broth from the whole spices and set aside. Add 2 ladles of it to the bottom of the oven dish with the lamb.
At this point, if you want a more seasoned tasting lamb, rub it with your favourite spice blend such as the middle eastern seven spice blend.
Cover the lamb tightly with foil and roast it in the oven at 400F for 2-3 hours until it is falling off the bone tender. Be sure to check it with a fork. During the last 10 minutes, remove the foil and broil the top to get some colour.