Heat the oil and butter in a large, deep skillet or Dutch oven over medium heat until the butter melts and starts to foam.
Add the diced onion and cook for 3-4 minutes until translucent, stirring occasionally to prevent browning.
Stir in the garlic and cook for just 30 seconds until fragrant, being careful not to let it burn.
Add the mushrooms, thyme, rosemary, and red pepper flakes (if using). Cook for 5-7 minutes until the mushrooms release their moisture and begin to brown, stirring occasionally.
Season with salt and pepper to taste, remembering the broth and cheese will add saltiness later.
Pour in the broth and bring to a simmer, scraping any browned bits from the bottom of the pan (these add flavor!).
Add the uncooked pasta to the pot, making sure it’s mostly submerged in the liquid. Reduce heat to medium-low and cook, stirring occasionally, for about 10-12 minutes or until the pasta is al dente and most of the liquid is absorbed.
Stir in the heavy cream and Parmesan cheese until fully incorporated and the sauce coats the pasta evenly.
Remove from heat and let the pasta sit for 2 minutes to allow the sauce to thicken slightly.
Taste and adjust seasoning if needed, then serve immediately topped with additional Parmesan and fresh parsley.