Cook the pasta in a large pot according to the package instructions to al dente (slightly undercooked and still firm to the touch). Drain (reserving 1-2 cups of pasta water) and set it aside.
Heat a large skillet over medium heat with 1-2 tablespoons of the olive oil and butter. As soon as the butter melts and starts to bubble, add the mushrooms and season with salt, pepper, and Creole seasoning.
Cook mushrooms, stirring frequently, until slightly brown and softened, 7-10 minutes. Avoid overcrowding, so if using a small skillet, you may have to cook in batches. You don’t need to add more oil; the mushrooms will release their liquid, and you can continue cooking until most of the liquid evaporates.
Add the garlic and continue cooking until fragrant (about a minute), season with salt, and set aside.
Wipe the skillet if needed, then add the remaining olive oil and butter, followed by the onion, garlic, thyme, chili flakes, and Creole seasoning. Sauté for 2-3 minutes for the flavors to bloom.
Add flour and cook for another minute. Gently pour in the milk and stock, a little at a time. Whisk as you pour to prevent lumps. Reduce the heat and let it simmer until the mixture slightly thickens. (See notes)
Stir in the Parmesan and cooked pasta. Either add the cooked mushrooms now or serve them separately and top the pasta. I prefer to serve later, but you decide what you want.
Adjust the thickness with pasta water, but remember that cream sauce thickens as it sits.
Remove pasta from the heat and serve immediately. Garnish with Parmesan and fresh parsley if desired. Enjoy!