Add everything up until the dandelions to a pot. Bring to a boil then cover and reduce to a simmer for 1.5 hours.
While that's happening, make your meatballs and cut your dandelions into pieces. For the meatballs, let breadcrumbs soak in the milk for 5 minutes, then add everything to the ground beef, mix, and roll into small meatballs. Set aside.
Drain the soup into another pot, tossing everything but the chicken.
Shred the chicken using two forks, making sure to throw out the bones and skin.
Add chicken back to broth along with the meatballs and dandelions. Bring to a boil then reduce to a simmer for another hour or so.
Towards the end, add the egg whites to the simmering soup, making sure to stir them around so ribbons form.
Taste for seasoning and add a touch more salt if needed. Serve with freshly grated Parm or Locatelli, red pepper flakes, and freshly ground black pepper.