Place chicken bones in a large stockpot and cover with cold water. Bring to a gentle simmer, filling your kitchen with a rich, meaty aroma, then skim off any foam that rises to keep the broth clear.
Reduce the heat to low and let the broth simmer slowly for about 2 hours, adding chopped onion, carrots, and celery after the first 30 minutes to build a fragrant, layered flavor.
Strain the broth through a fine sieve into a clean pot, pressing gently on the solids to extract all the flavorful liquid, leaving behind the bones and vegetable remnants.
Meanwhile, shred cooked chicken thighs or breasts, seasoning lightly with salt and pepper; set aside.
Add your choice of noodles or rice to the strained broth and bring to a gentle simmer, cooking until tender and fragrant, about 10 minutes for noodles or 15 for rice.
Stir in the shredded chicken and cook for another 5 minutes to heat through.
Squeeze fresh lemon juice into the soup and add a bit of zest to brighten the flavors, then taste and adjust seasoning with salt and pepper.
Garnish with chopped fresh herbs for a pop of color and freshness, just before serving.
Ladle the hot soup into bowls, ensuring each serving has plenty of broth, tender vegetables, and shredded chicken, ready to enjoy.