Gather all ingredients, chop the onion, and mince the garlic.
In a large skillet, heat olive oil over medium heat. Add chopped onion and minced garlic, sauté for 3-4 minutes until translucent.
Add ground beef to the skillet, cook for 5-7 minutes, breaking it up as it browns. Drain excess fat.
Stir in tomato sauce, diced tomatoes, Italian seasoning, salt, and black pepper. Let simmer for a few minutes.
Add uncooked elbow macaroni and beef broth, stir well to coat the pasta.
Transfer mixture to a greased 9x13-inch baking dish, cover with foil, and bake at 350°F for 25 minutes.
Remove foil, stir, sprinkle mozzarella and Parmesan cheese on top, and bake uncovered for an additional 15-20 minutes until cheese is melted and bubbly.
Let cool for 5 minutes before serving.