Start by boiling a large pot of salted water. Cook the penne pasta according to package instructions until al dente, usually about 8-10 minutes. Drain and set aside.
In a large skillet, heat the olive oil over medium heat. Add the diced onion and sauté for 2-3 minutes until softened.
Add the minced garlic and ground beef to the skillet. Cook until the beef is browned and fully cooked, about 5-6 minutes. Drain any excess fat.
Stir in the drained diced tomatoes, Italian seasoning, salt, and black pepper. Cook for another 2 minutes to blend the flavors.
Pour in the beef broth and heavy cream, stirring well. Bring the mixture to a simmer and let it cook for 5 minutes, allowing the sauce to thicken slightly.
Reduce the heat to low and add the shredded cheddar cheese and grated Parmesan cheese. Stir until the cheese is melted and the sauce is creamy.
Mix the cooked penne pasta into the cheesy beef sauce, stirring to coat the pasta evenly. Let it cook together for an additional 2-3 minutes.
Serve hot, garnished with fresh parsley if desired.