Trim the lamb leg of excess fat and cut into 1-inch cubes.
Heat the olive oil in a heavy-bottomed pot or tagine over medium heat.
Add the diced onion, minced garlic, and grated ginger, sautéing until the onion is translucent and fragrant.
Increase the heat slightly and add the lamb cubes, browning them on all sides to lock in the juices.
Stir in the cinnamon, cumin, coriander, salt, and pepper, coating the meat thoroughly in the spice blend.
Pour in the tomato puree, halved apricots, and beef broth, stirring to combine.
Reduce the heat to low, cover tightly, and simmer for 45-60 minutes until the lamb is fork-tender and the sauce has thickened.
Garnish with freshly chopped cilantro before serving.