Heat the vegetable oil in a large pot over medium heat.
Add the chopped onion and sauté until golden brown, about 5-7 minutes.
Stir in the minced garlic and ginger, cooking for another 1-2 minutes until fragrant.
Add the chicken pieces to the pot and cook until they are browned on all sides, about 5-6 minutes.
Sprinkle in the turmeric, cumin, coriander, garam masala, and red chili powder, stirring well to coat the chicken evenly with the spices.
Pour in the rinsed red lentils and chicken broth. Bring the mixture to a boil, then reduce the heat to low.
Cover and simmer for about 25-30 minutes, or until the lentils are tender and the chicken is cooked through.
Stir in the chopped tomato and spinach, cooking for an additional 5 minutes until the spinach is wilted.
Season with salt to taste.
Serve hot, garnished with fresh cilantro.