Bring a large sauce pot of water to a boil, add salt then add the pasta. Follow package instructions and cook until al dente and drain.
Heat oil in a large skillet, add onion, celery, and carrots. Cook and stir until tender, about 5-7 minutes. Add garlic and sauté for another 2 minutes.
Add the ground beef and breaking meat with a fork or spoon. Cook the beef until there is no pink visible, about 8 minutes.
Add crushed tomatoes, tomato paste, oregano, salt, black pepper and pepper flakes. Simmer for 1 hour, allowing the sauce to thicken and flavours to blend. Add most of the parmesan cheese, leaving enough to garnish.
Once the sauce has thicken, taste and adjust the seasoning at this time if needed.
Garnish with Parmesan cheese and fresh basil.