Marinate the Chicken: Mix yogurt, lemon juice, and spices; coat chicken cubes and refrigerate for at least 30 minutes.
Cook the Pasta: Boil linguine in salted water until al dente. Reserve ¼ cup of pasta water and drain.
Cook the Chicken: Sear marinated chicken in a skillet until browned and fully cooked. Set aside.
Make the Sauce: Sauté onion in butter, then add garlic and ginger. Cook until fragrant.
Spice it Up: Stir in garam masala, paprika, and chili powder to release the aroma.
Add Tomato and Cream: Simmer tomato purée, then add cream or coconut milk. Cook until slightly thickened.
Return Chicken & Adjust: Add chicken to the sauce, season to taste, and loosen with reserved pasta water if needed.
Toss with Linguine: Mix the pasta into the sauce until well coated.
Serve: Garnish with chopped cilantro and serve hot. Optional: pair with naan or garlic bread.