Preheat the oven to 375°F (190°C).
In a large pot, cook the lasagna noodles according to package instructions. Drain and set aside.
In a large skillet over medium heat, add the ground beef, Italian sausage, chopped onion, and minced garlic. Cook until the meat is browned and the onions are translucent. Drain excess fat.
Stir in crushed tomatoes, tomato paste, basil, oregano, salt, and pepper. Simmer for 15 minutes to allow flavors to combine.
In a mixing bowl, combine ricotta cheese, egg, and half of the Parmesan cheese. Mix until well combined.
Spread a thin layer of the meat sauce on the bottom of the baking dish. Layer 4 lasagna noodles over the sauce.
Spread one-third of the ricotta mixture over the noodles, followed by one-fourth of the remaining meat sauce, and one-third of the mozzarella cheese.
Repeat layers (noodles, ricotta, meat sauce, mozzarella) two more times. For the final layer, top with remaining noodles, meat sauce, and sprinkle the remaining mozzarella and Parmesan cheese on top.
Cover the baking dish with aluminum foil (to prevent sticking, spray foil with cooking spray first). Bake for 25 minutes.
Remove foil and bake for an additional 20 minutes, or until the cheese is bubbly and golden brown.
Remove from the oven and let it cool for 10-15 minutes before slicing. Garnish with fresh basil or parsley if desired.