Cook the Noodles: Prepare the egg noodles according to the package directions. Drain and set aside.
Cook the Beef: In a large skillet, heat the canola oil over medium-high heat. Add the sliced beef and cook until browned. Remove the beef from the pan and set it aside.
Sauté the Aromatics: In the same pan, melt the butter. Add the garlic and onions and cook until they become translucent.
Cook the Mushrooms: Add the mushrooms to the pan and cook for about 5 minutes, or until they are softened and browned.
Create the Roux: Sprinkle the flour over the vegetables and mix well. Cook for 1 minute to eliminate the raw flour taste.
Make the Sauce: Gradually add the beef broth while stirring continuously to prevent lumps. Continue to cook until the sauce thickens.
Add Creams and Cheese: Reduce the heat to a simmer and add the heavy cream, sour cream, and half of the Parmesan cheese. Season with salt and pepper to taste.
Combine Beef and Sauce: Return the cooked beef to the pan and mix well until the beef is coated in the sauce. Cook for a few more minutes to meld the flavors.
Mix with Noodles: In a large bowl, combine the cooked noodles with the beef and sauce mixture.
Assemble the Casserole: Transfer the mixture to a greased 9×13-inch baking dish. Sprinkle the top with the remaining Parmesan and mozzarella cheeses.
Bake: Place the dish in the preheated oven and bake for 25 to 30 minutes, or until the top is bubbly and golden brown.
Garnish and Serve: Before serving, sprinkle with finely chopped parsley for a fresh finish.