Cook the Spaghetti
Cook the spaghetti according to the package directions until al dente. Drain and set aside.
Cook the Ground Beef
While the pasta is cooking, heat a skillet over medium heat. Add the ground beef (or Italian sausage) and cook until browned, breaking it up into small pieces. Drain any excess fat, then add the marinara sauce to the skillet. Simmer for 5-10 minutes, seasoning with garlic powder, onion powder, salt, and pepper to taste.
Prepare the Cheese Mixture
In a large bowl, mix the softened cream cheese, sour cream, and ricotta cheese until smooth and well combined. Stir in 1 cup of the mozzarella cheese and ½ cup of the Parmesan cheese.
Assemble the Casserole
Preheat your oven to 350°F (175°C). In a 9x13-inch baking dish, spread a small amount of marinara sauce on the bottom. Layer half of the cooked spaghetti on top of the sauce. Spread half of the cheese mixture over the pasta, followed by half of the meat sauce. Repeat the layers with the remaining pasta, cheese mixture, and meat sauce. Top the casserole with the remaining mozzarella and Parmesan cheese.
Bake
Cover the baking dish with aluminum foil and bake for 25-30 minutes. Then, remove the foil and bake for an additional 10-15 minutes, or until the cheese is melted and bubbly and the top is golden brown.
Garnish and Serve
Let the Million Dollar Spaghetti cool for 5-10 minutes before serving. Garnish with chopped parsley if desired.