Ingredients
Equipment
Method
Prepare the Meatballs
- In a large mixing bowl, combine the ground beef, breadcrumbs, Parmesan cheese, egg, minced garlic (for meatballs), chopped parsley (for meatballs), salt, pepper, and oregano.
- Mix gently with your hands until just combined. Be careful not to overmix, as this can make the meatballs tough.
- Roll the mixture into 1-inch meatballs. You should get approximately 30-35 meatballs. Set aside.
Cook the Soup
- Heat the olive oil in a large Dutch oven or soup pot over medium heat.
- Add the chopped onion, diced carrots, and diced celery. Sauté for 5-7 minutes, or until the vegetables start to soften.
- Add the minced garlic (for soup) and sauté for another minute until fragrant.
- Pour in the crushed tomatoes and beef broth. Stir in the dried basil and dried thyme. Bring the soup to a gentle simmer.
- Carefully add the prepared meatballs to the simmering soup. Do not stir too vigorously immediately after adding, to prevent them from breaking apart. Let them cook in the broth for about 10 minutes.
- Add the rinsed cannellini beans and ditalini pasta to the pot. Cook for another 8-10 minutes, or until the pasta is al dente.
- Stir in the fresh spinach and cook for 2-3 minutes, or until wilted.
- Taste the soup and season with additional salt and pepper as needed.
Serve
- Ladle the hot soup into bowls.
- Garnish each serving with freshly grated Parmesan cheese and a sprinkle of chopped fresh parsley. Serve immediately.
Notes
For a gluten-free option, use gluten-free breadcrumbs and gluten-free small pasta. Leftover soup can be stored in an airtight container in the refrigerator for up to 3-4 days. The pasta will absorb more liquid over time, so you might need to add a splash of broth when reheating.
![A blue Dutch oven filled with hearty {{ $('Fetch Recipe Data').first().json["Main Keyword"] }}, featuring mini meatballs, white beans, and a wooden spoon.](https://bestrecipestasty.com/wp-content/uploads/2025/12/meatball-soup-recipes.webp)