Incredible Italian meatball soup takes homemade Italian meatballs and combines them with tender pasta, fresh veggies, and a flavorful tomato broth for a hearty, satisfying soup that’s super easy to make. Great for cooler weather and busy evenings.
What Makes This Recipe So Good
- Italian meatball soup takes all the delicious Italian flavors of a classic spaghetti and meatballs and transforms them into a hearty, satisfying, hot soup that’s perfect for cooler weather. What’s really nice is that there’s enough substance to this soup that it can be a whole meal on its own – just serve it with a little bread and you’re good to go!
- This is a great meal prep option, so feel free to double the recipe so you’ve got enough soup to get through the week! Any leftovers can be refrigerated in an airtight container up to 7 days. Let the soup cool completely before putting it in the fridge, though!
- This recipe is already super easy, but you can make it even easier by using store-bought or frozen meatballs, rather than making your own from scratch. I prefer mine homemade, though – they’ve got a better flavor, IMO, and you can really make them your own.
Ground Beef & Italian Sausage – A blend of the two gives you the BEST homemade meatballs, trust me. If you want to give your meatball soup a little kick, use a hot Italian sausage instead of mild. You can also make the meatballs with ground turkey instead of ground beef if you prefer it.
Italian Breadcrumbs – Breadcrumbs help bind the meatball mixture together so they don’t crumble and fall apart in the soup. I like to use Italian breadcrumbs here specifically for even more of that delicious Italian flavor.
Pasta – Any short pasta will work here, so use your favorite! You can go with shells, elbows, rotini, fusilli, farfalle – whatever you like.
- Don’t overcook the meatballs under the broiler! You’ll be adding them to the soup later to finish cooking while the pasta cooks, so if you start with them overcooked, you’ll end up with dry, tough meatballs.
- If you want to make this meatball soup dairy free, all you have to do is swap out the grated parmesan with a dairy-free version! You can omit it altogether if you don’t have a dairy-free parmesan alternative, but the meatballs may not hold together as well, and you’ll lose a little flavor.
- When you’re forming the meatballs, keep them on the small side. That way they’re easier to eat! If you forget, though, you can always cut them into smaller pieces with your spoon. If you make them very small, you’ll want to adjust the time under the broiler to keep them from cooking too much!
More Delicious Soup Recipes You’ll Love
- Whole30 Creamy Taco Soup
- Healthy Zuppa Toscana (Whole30, Paleo, Dairy Free)
- Instant Pot Vegetable Soup
- Albondigas Soup (Mexican Meatball Soup)
- Instant Pot Chicken and Rice Soup
For the Meatballs
- ½ pound ground beef
- ½ pound mild Italian sausage
- 2 cloves garlic minced
- 1 large egg beaten
- ¼ cup freshly grated parmesan
- ¼ cup Italian breadcrumbs
- 1 teaspoon Italian seasoning
- kosher salt to taste
- freshly ground black pepper to taste
For the Soup
- 1 tablespoon olive oil
- 1 medium onion diced
- 2 large carrots diced
- 2 stalks celery diced
- 3 cloves garlic minced
- 6 cups beef broth
- 1 15-ounce can tomato sauce
- 1 15-ounce can crushed tomatoes undrained
- 1 teaspoon Italian seasoning
- 1 cup dry short-cut pasta see Notes
- ¼ cup fresh parsley chopped
- freshly grated parmesan for serving, optional
- Baking sheet (and butter or spray oil)
- Large bowl
- Tablespoon or cookie scoop with release handle
- Heavy-bottomed pot or dutch oven
- Lightly grease baking sheet with butter or spray oil. Turn broiler on high.
- Mix together all meatball ingredients in large bowl until thoroughly combined. Using teaspoon or cookie scoop, scoop 2 tablespoons of meatball mixture and roll between hands to smooth into meatball shape. Place on baking sheet and repeat until all meatballs have been formed.
- Place baking sheet under broiler. Broil meatballs for 6 to 7 minutes or until browned, but not completely cooked through. Meatballs will finish cooking in soup.
- In heavy-bottomed pot or dutch oven, heat olive oil over medium-high heat. Once oil is hot and shimmery, add onions, carrots, celery, and garlic. Cook veggies 4 to 5 minutes, stirring frequently, until all have softened.
- Pour in beef broth, tomato sauce, crushed tomatoes, and Italian seasoning. Stir well and simmer 5 to 6 minutes.
- Add dry pasta and broiled meatballs to soup. Cook until pasta is tender and meatballs are cooked through, then stir in fresh parsley. Portion soup into serving bowls, garnish with grated parmesan if desired, and serve hot.
- Pasta: Any uncooked short pasta will work, so use your favorite. Shells, elbow, rotini, fusilli, etc.
- Make it Dairy Free: Use a dairy-free parmesan alternative.
Number of total servings shown is approximate. Actual number of servings will depend on your preferred portion sizes.
Nutritional values shown are general guidelines and reflect information for 1 serving using the ingredients listed, not including any optional ingredients. Actual macros may vary slightly depending on specific brands and types of ingredients used.
To determine the weight of one serving, prepare the recipe as instructed. Weigh the finished recipe, then divide the weight of the finished recipe (not including the weight of the container the food is in) by the desired number of servings. Result will be the weight of one serving.