Pat the chicken dry with paper towels and score the larger pieces with shallow cuts. Season lightly with salt and turmeric, then set aside.
Heat oil in a heavy-bottomed pot over medium-high heat. Add chopped onions and cook for 12-15 minutes until deeply golden brown, stirring occasionally.
Add the minced garlic, grated ginger, and slit green chilies to the pot. Stir and cook for 1-2 minutes until fragrant.
Reduce heat to medium. Add Kashmiri chili powder, ground coriander, ground cumin, and turmeric. Stir constantly for 60-90 seconds to bloom the spices.
Add the chopped tomatoes and increase heat to medium-high. Cook for 8-10 minutes, stirring regularly, until tomatoes break down and oil separates from the masala.
Add the seasoned chicken and toss to coat in the masala. Cook over medium-high heat for 5-7 minutes until the chicken loses its raw pink color.
Pour in the water, add the remaining salt, and scrape up any masala from the bottom. Bring to a boil, then reduce heat to low, cover, and simmer for 20-25 minutes until chicken is cooked through and sauce thickens.
Remove the lid and stir in the garam masala and crushed kasuri methi (if using). Simmer uncovered for 2-3 more minutes, then taste and adjust seasoning.
Turn off the heat and garnish with freshly chopped cilantro. Serve hot with steamed basmati rice or warm naan.