Heat olive oil in a large pot or Dutch oven over medium heat.
Add ground beef and cook until browned, breaking it apart as it cooks. Drain excess grease if needed.
Add diced onion and cook until softened, about 3–4 minutes. Stir in garlic and cook 30 seconds.
Add tomato sauce, diced tomatoes, beef broth, paprika, Italian seasoning, salt, and pepper. Stir well.
Bring to a gentle simmer, cover, and cook for 10 minutes.
Stir in uncooked macaroni. Cover and simmer 12–15 minutes, stirring occasionally, until pasta is tender.
Taste and adjust seasoning. Remove from heat and rest 5 minutes before serving.
Garnish with cheese or parsley if desired.