1 lb boneless, skinless chicken breasts, cut into 1-inch pieces
28 oz canned whole tomatoes or fresh tomatoes, chopped
9 oz mozzarella cheese, diced
1 medium onion, finely chopped
2 cloves garlic, minced
1/4 cup grated Parmesan cheese
4 tablespoons olive oil, divided
Fresh basil leaves, to taste
Salt and pepper, to taste
Instructions
Boil a large pot of salted water. Add pasta and cook according to package instructions until al dente. Drain and set aside, reserving 1/2 cup pasta water.
Heat 2 tablespoons olive oil in a large 12-inch skillet over medium-high heat. Season chicken with salt and pepper. Cook for 6-7 minutes, turning occasionally, until golden brown and cooked through (165°F internal temperature). Remove and set aside.
In the same skillet, heat remaining 2 tablespoons olive oil over medium heat. Add chopped onions and sauté until translucent, about 5 minutes.
Stir in minced garlic and cook for 1 minute, stirring constantly to prevent burning.
Pour in tomatoes, breaking them up with a spoon. Season with salt and pepper. Cook for 15-20 minutes until sauce thickens and coats the back of a spoon.
Add cooked pasta and chicken to the skillet, tossing gently until coated. Add reserved pasta water if sauce is too thick.
Stir in diced mozzarella, allowing it to melt slightly into the pasta mixture without overmixing.
Add freshly torn basil leaves and stir gently. Taste and adjust seasoning if necessary.
For extra cheesy top, transfer to a 9×13-inch baking dish, sprinkle with Parmesan, and bake at 350°F for 15-20 minutes until bubbly and golden.
Remove from heat (or oven) and let rest for 3-5 minutes to allow cheese to set. Serve hot, garnished with additional basil and a drizzle of olive oil if desired.
Notes
Use San Marzano tomatoes for the most authentic, sweet flavor. Fresh mozzarella melts beautifully but low-moisture works too and prevents excess liquid.
Rigatoni holds sauce better than penne. The pasta water’s starch helps bind the sauce to the pasta.
Leftovers keep 3-4 days refrigerated and freeze well for up to 2 months. Reheat with a splash of broth to prevent drying.
Optional baking step adds 15-20 minutes to total time.