In a bowl, combine the chicken with yogurt, lemon juice, spices, and salt. Mix well to coat. Let marinate for at least 20 minutes (or longer for a deeper flavor).
In the same pan, melt the butter over medium heat. Add the chopped onion and sauté for 2–3 minutes until softened and translucent.
Lower the heat to medium-low. Add cumin, garam masala, chili powder, turmeric, garlic powder, and ginger powder. Cook for about 4–6 minutes, stirring occasionally, until fragrant and slightly deepened in color.
Add the tomato puree and let it simmer for 10–15 minutes, stirring occasionally, until thickened and rich.
While the sauce is simmering, bring a pot of salted water to a boil and cook the pasta according to the package.
Stir in the cream, sugar, and salt. Simmer gently for 2–3 minutes. Reserve 1/4 cup of the sauce for later.
Add the cooked pasta and Parmesan to the sauce. Toss until evenly coated.
Heat a pan over medium-high heat with a little oil. Sear the chicken for 2–3 minutes per side until nicely browned and cooked through.
Plate the pasta, top with the seared chicken, and spoon over the reserved sauce. Finish with extra Parmesan, a drizzle of cream, and fresh coriander.