Preheat the oven to 350°F (175°C).
Cook penne pasta according to package directions until al dente. Drain and set aside.
In a large skillet, heat olive oil over medium heat. Add ground beef or sausage and cook until browned. Drain excess fat.
Add diced onion and minced garlic to the skillet. Sauté for 2-3 minutes until softened.
Stir in marinara sauce, tomato sauce, Italian seasoning, salt, and pepper. Simmer for 5-7 minutes.
Combine the cooked pasta with the meat sauce in the skillet and mix well.
Transfer half of the pasta mixture to a greased 9x13-inch baking dish. Sprinkle with half of the mozzarella and Parmesan cheese.
Repeat with the remaining pasta and cheese.
Cover with foil and bake for 20 minutes. Remove foil and bake an additional 10 minutes until cheese is melted and bubbly.
Garnish with chopped parsley, if desired, and serve hot.