In a mixing bowl, combine the mutton pieces, minced garlic, grated ginger, ground cumin, ground coriander, turmeric powder, red chili powder, and salt. Mix well to coat the mutton evenly with the spices. Let it marinate for at least 30 minutes, or refrigerate overnight for more intense flavors.
Heat the cooking oil or ghee in a large pot or Dutch oven over medium heat.Add the chopped onions to the pot and sauté until they turn golden brown and caramelized.
Add the marinated mutton to the pot and cook, stirring occasionally, until the meat is browned on all sides.
Add the pureed or finely chopped tomatoes to the pot and mix well. Cook for a few minutes until the tomatoes soften and release their juices.
Reduce the heat to low, cover the pot with a lid, and let the mutton simmer for about 1.5 to 2 hours, or until the meat becomes tender and flavorful. Stir occasionally and add water if needed to maintain a thick gravy consistency.
Once the mutton is cooked to perfection, sprinkle the garam masala over the curry and mix well. Allow it to simmer for a few more minutes to infuse the flavors.
Taste and adjust the seasonings if needed, adding more salt or spices according to your preference.
Remove the pot from heat and garnish the mutton curry with fresh coriander leaves.
Serve the mutton curry hot with steamed rice, naan bread, or roti for a complete and satisfying meal.