In a large mixing bowl, combine the ground beef, grated zucchini, breadcrumbs, grated Parmesan cheese, egg, minced garlic, dried oregano, salt, and black pepper. Mix thoroughly until evenly incorporated.
Form the Meatballs
Shape the mixture into small meatballs, about 1 inch in diameter. Place them on a plate or tray, making sure they don’t touch to avoid sticking.
Sauté the Vegetables
Heat the olive oil in a large pot or Dutch oven over medium heat. Add the chopped onion and bell pepper and sauté for about 5 minutes, until softened and fragrant.
Add Broth and Tomatoes
Pour in the chicken broth and diced tomatoes with their juices. Stir to combine and bring to a gentle boil.
Cook the Meatballs in the Soup
Carefully drop the meatballs into the boiling broth. Reduce heat to a simmer, cover the pot, and cook for 15 to 20 minutes until meatballs are cooked through and tender.
Add Spinach and Final Touches
Stir in the chopped spinach and cook for an additional 2 to 3 minutes until wilted. Adjust seasoning with salt and pepper if needed.
Serve Garnished
Ladle soup into bowls and garnish each serving with fresh basil leaves. Serve warm with crusty bread or your favorite side.
Equipment
Large Mixing Bowl
Large Pot
Dutch Oven
Spoon
Notes
Grate zucchini finely and squeeze out excess moisture to help meatballs hold shape.
Cook meatballs in batches if needed to prevent overcrowding and sticking.
Use fresh herbs like basil or parsley to brighten flavor.
Swap half chicken broth with vegetable broth or add white wine for richer broth.