Heat oil in a large pot or Dutch oven over medium-high heat. Add the onions and cook until they are soft and golden brown (about 8 minutes). Stir in the ginger and garlic and cook for 1 minute until fragrant.
Step 2
Add the chicken pieces to the pot. Cook until the outside is no longer pink and the chicken has taken on a bit of color.
Step 3
Lower the heat slightly. Add the curry powder, chili powder, salt, and pepper. Stir constantly for 30–60 seconds to "toast" the spices without burning them.
Step 4
Add the cubed potatoes, tomatoes, and water. Stir well to scrape up any browned bits from the bottom of the pot. Bring to a boil, then reduce heat to low.
Step 5
Cover with a lid and simmer for 20–25 minutes, or until the potatoes are tender when pierced with a fork and the chicken is cooked through.
Step 6
Stir in the garam masala and a squeeze of lime juice. If the gravy is too thick, add a splash of water; if too thin, simmer uncovered for 5 more minutes.
Step 7
Garnish generously with fresh cilantro.
Notes
Cut your potatoes slightly smaller than your chicken. This ensures they cook at the same rate and absorb the maximum amount of gravy.
Use chicken thighs instead of breasts. They stay juicy during the simmering process, whereas breast meat can become dry.
This dish is special because...
This dish is special because of the potato's role as a flavor sponge. While the chicken provides the protein and richness, the potatoes absorb the spicy, aromatic oils and juices, often becoming the favorite part of the meal. It is a "peasant-style" dish designed to be both economical and filling, stretching a small amount of meat into a feast for the whole family.