Preheat the oven to 350 degrees F (175 degrees C).
Bring a large pot of lightly salted water to a boil. Cook spaghetti in the boiling water, stirring occasionally until cooked through but firm to the bite, about 12 minutes. Drain.
Heat olive oil in a large skillet over medium heat. Add onion and garlic; cook and stir until lightly browned, about 5 minutes. Add mushrooms; cook and stir until softened, about 5 minutes. Stir in chicken.
Melt butter in a saucepan over medium heat. Stir in flour; cook and stir until lightly browned, about 2 minutes. Slowly stir in chicken stock. Cook and stir until sauce thickens, about 5 minutes. Remove from heat and stir in Parmesan cheese. Pour sauce over chicken mixture.
Mix spaghetti into chicken mixture. Transfer to a 9x13 inch baking dish. Sprinkle mozzarella cheese and breadcrumbs over the top.
Bake in preheated oven until cheese is melted and bubbly, about 20 minutes.
Interesting Facts
This casserole is a great way to use leftover cooked chicken.
You can substitute other cheeses, such as cheddar, for the mozzarella.
This dish can be prepared ahead of time and refrigerated until ready to bake.