Preheat oven to 400°F.
Combine all the meatball ingredients in a large bowl.
1 lb. lean ground beef, ½ cup breadcrumbs, ¼ cup freshly grated Parmesan cheese, 1 large egg, 1 tsp kosher salt, ½ tsp garlic powder, ½ tsp onion powder, ½ tsp Italian seasoning
Form into 26-30 balls and place on a lined baking sheet.
Bake the meatballs for 15-20 minutes.
When the meatballs have about 10 minutes left to cook, heat the olive oil in a soup pot over medium heat.
1 tbsp olive oil
Add in the onion, carrot, celery, salt, and Italian seasoning. Cook for a few minutes until softened.
½ onion, 2 carrots, 2 ribs celery, ½ tsp kosher salt, 1 tsp Italian seasoning
Add in the garlic and tomato paste, and cook for another minute.
3 cloves garlic, 3 tbsp tomato paste
Add in the crushed tomatoes, beef broth, pasta, and meatballs.
28 oz. crushed tomatoes, 6 cups low-sodium beef broth, 1⅓ cups dry ditalini pasta
Bring everything to a boil. Then, reduce to a simmer. Cover and cook for 10-15 minutes until the pasta is al dente.
Stir in the spinach until wilted.
3 cups fresh spinach
Top with parsley, parm, and red pepper flakes if desired.
chopped fresh parsley, freshly grated Parmesan cheese, red pepper flakes