In a large bowl, combine the olive oil, minced garlic, ground cumin, coriander, paprika, turmeric, cinnamon, black pepper, cardamom, salt, yogurt, and lemon juice. Mix well to form a paste.
Rub the spice paste all over the lamb, making sure to coat it thoroughly. Cover and refrigerate for at least 24 hours, preferably 2-3 days, to allow the flavors to infuse.
Preheat your oven to 300°F (150°C).
If you’re using a traditional method, dig a pit in the ground lined with hot coals. For a conventional oven, use a large roasting pan.
If using the oven, cover the roasting pan tightly with aluminum foil. Roast the lamb in the preheated oven for 4-6 hours, or until the meat is tender and falls off the bone. If using a pit, place the lamb wrapped in banana leaves or foil over the hot coals and cover with more coals. Cook for about 6-8 hours.
Once the lamb is cooked, carefully remove it from the oven or pit. Let it rest for about 15 minutes before shredding or carving. Garnish with fresh herbs if desired.
Enjoy your meal!