Add 6 quarts of water and the two chopped onions to a pot. Salt the water as desired.
Bring the water to a boil and let it simmer for 1 hour.
Meantime, prepare the polpettine (meatballs).
In a bowl, add the ground beef, the cheese, bread crumbs, eggs and the parsley and garlic both very finely chopped.
Mix all the ingredients very well and roll the polpettine about 1/2" in diameter.
Once the water has simmered for 1 hour, add the carrots and celery cut in large pieces and cook for 15 minutes.
Add the polpettine and cook for an additional 15 minutes.
Add the spinach and cook for and additional 5 minutes.
Serve in a bowl and garnish with grated Parmigiano cheese.