Preheat the oven to 375°F (190°C). Lightly grease a 9x13-inch baking dish.
Make the ragù: Heat the olive oil in a large Dutch oven over medium heat. Add pancetta and cook 2–3 minutes, until it starts to render.
Add onion, carrot, and celery. Cook about 5 minutes, stirring, until softened. Stir in garlic and cook 30 seconds until fragrant.
Add the ground beef and cook until browned, breaking it up with a spoon, 6–8 minutes. Season with a pinch of salt and pepper.
Pour in the red wine and simmer 2–3 minutes to cook off the alcohol. Stir in passata, tomato paste, broth, oregano, and basil.
Bring to a gentle simmer, then reduce heat to low. Simmer uncovered for about 30 minutes, stirring occasionally, until thick and rich. Taste and adjust salt and pepper.
Make the béchamel: Melt butter in a medium saucepan over medium heat. Whisk in flour and cook 1 minute to remove the raw flour taste.
Slowly whisk in the milk. Cook, whisking often, until thickened and smooth, about 4–6 minutes. Season with salt and a pinch of nutmeg. Remove from heat.
Prep noodles (if needed): If using dried lasagna noodles that require boiling, cook in salted water until just pliable, then drain. Fresh sheets usually don’t need pre-boiling—follow package directions.
Assemble: Spread a thin layer of ragù in the baking dish. Add a layer of noodles. Top with ragù, a drizzle of béchamel, and a sprinkle of Parmesan (and a few spoonfuls of ricotta if using). Repeat for 3–4 layers.
Finish with a final layer of noodles, the remaining béchamel, and a generous layer of Parmesan.
Cover with foil and bake for 25 minutes. Remove foil and bake 15 minutes more, until bubbling and golden on top.
Let the lasagna rest for 10 minutes before slicing and serving (it will hold together much better).