Heat the vegetable oil in a large pot or Dutch oven over medium heat.
Add the lamb cubes and brown them on all sides. Remove the lamb and set aside.
In the same pot, add the finely chopped onions and cook until they become soft and translucent.
Stir in the minced garlic and ginger, and cook for another minute.
Add the cumin seeds, coriander powder, ground cumin, paprika, turmeric powder, garam masala, ground cloves, ground cinnamon, ground cardamom, red chili powder, and salt to the pot.
Cook for a few minutes, stirring constantly, until the spices release their aroma.
Add the chopped tomatoes to the pot and cook until they soften and release their juices.
Gradually stir in the whisked yogurt, a little at a time, to prevent it from curdling. Mix well with the tomato and spice mixture.
Return the browned lamb cubes to the pot, stirring to coat them with the sauce.
Add enough water to cover the lamb, bring to a boil, then reduce the heat to low.
Cover the pot and simmer for about 1.5 to 2 hours, or until the lamb is tender and the sauce has thickened. Stir occasionally to prevent sticking.
Taste and adjust the seasoning with salt if needed.
Garnish the Rogan Josh with freshly chopped cilantro.
Enjoy your meal!