Go Back
A close-up shot of a hearty Meatball Soup in a dark ceramic bowl, served with crusty bread in the background.

Hearty Italian Meatball & Orzo Soup

This comforting Italian Meatball Soup features tender homemade meatballs simmered in a rich tomato broth with hearty vegetables and orzo pasta, perfect for a cozy family meal.
Prep Time 30 minutes
Cook Time 45 minutes
Total Time 1 hour 15 minutes
Servings: 6 servings
Course: Main Course
Cuisine: Italian
Calories: 500

Ingredients
  

For the Meatballs
  • 1 lb Ground Beef 80/20 lean
  • 1/2 cup Panko Breadcrumbs
  • 1 large Egg
  • 1/4 cup Grated Parmesan Cheese
  • 2 tbsp Fresh Parsley chopped
  • 1 tsp Garlic Powder
  • 1/2 tsp Onion Powder
  • 1/2 tsp Italian Seasoning
  • 1/4 cup Milk
  • 1/2 tsp Salt
  • 1/4 tsp Black Pepper
For the Soup
  • 2 tbsp Olive Oil
  • 1 medium Yellow Onion diced
  • 2 Carrots peeled and diced
  • 2 Celery Stalks diced
  • 3 cloves Garlic minced
  • 1 14.5 oz can Diced Tomatoes undrained
  • 2 tbsp Tomato Paste
  • 6 cups Beef or Chicken Broth
  • 1 tsp Italian Seasoning
  • 1 Bay Leaf
  • 1/2 cup Orzo Pasta
  • 5 oz Fresh Spinach
  • Salt to taste
  • Black Pepper to taste
  • Fresh Parsley chopped, for garnish
  • Grated Parmesan Cheese for serving

Equipment

  • Large mixing bowl
  • Baking sheet or Air Fryer
  • Large Dutch oven or soup pot
  • Spatula

Method
 

Prepare the Meatballs
  1. In a large mixing bowl, combine ground beef, Panko breadcrumbs, egg, grated Parmesan, chopped fresh parsley, garlic powder, onion powder, Italian seasoning, milk, salt, and black pepper. Mix gently until just combined, being careful not to overmix.
  2. Roll the mixture into 1-inch meatballs (approximately 20-24 meatballs).
  3. To bake: Preheat oven to 400°F (200°C). Arrange meatballs on a lightly greased baking sheet and bake for 12-15 minutes, or until browned and cooked through. To air fry: Preheat air fryer to 375°F (190°C). Cook in batches for 8-10 minutes, shaking basket halfway, until browned. Set aside.
Assemble the Soup
  1. While meatballs cook, heat olive oil in a large Dutch oven or soup pot over medium heat. Add diced onion, carrots, and celery. Sauté for 5-7 minutes until softened.
  2. Add minced garlic and tomato paste to the pot. Cook for 1-2 minutes, stirring constantly, until fragrant.
  3. Pour in diced tomatoes (undrained) and beef or chicken broth. Add Italian seasoning and bay leaf. Bring the soup to a gentle simmer, then reduce heat to low, cover, and let it simmer for 15 minutes to allow flavors to meld.
  4. Increase heat to medium-low, add orzo pasta, and cook for 8-10 minutes, or according to package directions, until al dente.
  5. Stir in the cooked meatballs and fresh spinach. Cook for another 2-3 minutes, until the spinach has wilted and the meatballs are heated through.
  6. Remove the bay leaf. Taste and adjust seasoning with salt and pepper as needed.
  7. Ladle hot soup into bowls. Garnish with fresh chopped parsley and extra grated Parmesan cheese, if desired. Serve immediately.

Notes

For a spicier kick, add a pinch of red pepper flakes with the garlic. This soup can be made ahead; store in an airtight container in the refrigerator for up to 3-4 days. The orzo may absorb more liquid over time, so you might need to add a splash more broth when reheating.