Place the whole chicken or chicken parts into a large heavy-bottomed pot, and cover with about 4 liters of water. Bring gently to a simmer over medium heat, allowing the water to warm without boiling vigorously.
Skim off any foam or impurities that rise to the surface, and add the chopped onion, minced garlic, and bay leaves. Keep the heat gentle to prevent the broth from becoming cloudy.
Let the broth simmer slowly for about 1.5 hours, until the chicken is tender and falling off the bone, filling the house with a warm aroma.
Carefully remove the chicken from the pot and set aside to cool slightly. Strain the broth through a fine sieve into another container, discarding solids, to keep it clear and flavorful.
While the broth is still warm, shred the chicken meat into bite-sized pieces, discarding bones and skin.
Return the strained broth to the pot and bring it back to a gentle simmer. Add the sliced carrots and celery, and cook for about 5 minutes until they begin to soften.
Stir in the shredded chicken, season with salt and pepper, and let everything simmer together for another 20 minutes, allowing flavors to meld and vegetables to become tender.
Finish by adding lemon zest or a splash of hot sauce for brightness, and stir in fresh greens if desired for a fresh burst at the end.
Serve the steaming hot chicken soup in bowls, ladled generously with tender meat and vegetables, and enjoy the comforting aroma and flavors.