Begin with the chicken or beef bones. If you do not buy whole chickens, you can save the bones from your wings and legs in a bag in the freezer, until you have a sufficient amount (about equal to the size of a chicken carcass).
Put the bones in a large stock pot, completely covered by cold water, add a few couple tablespoons of apple cider vinegar. Let this sit for about an hour.
Bring to a boil, and remove the scum that rises to the top.Then add onion (chopped in quarters, leave the peel on for a beautiful yellow color in your stock), carrots and celery sticks. I like to save the remnants of these veggies whenever I'm chopping and preparing other dishes, and put them all in a plastic bag in the freezer until I'm ready to make broth. I just dump all these remnant pieces into my broth and it works just fine, and saves money for sure!
Reduce heat, cover and simmer for 6 to 24 hours (the longer, the better, as this will allow the gelatin to be more fully released from the bones, and results in a more flavorful broth). You can add fresh parsley or thyme to your stock in the last 10-15 minutes. Also, add a bit of salt, to bring out the flavors.
Pour through a strainer and set broth aside to cool (in the fridge is best, if you have enough room). Set aside bones and remove all meat for future soups, casseroles, etc. When broth is cool, remove layer of congealed fat from the top and discard.
Put broth in containers (glass is ideal- old pickle or mayonnaise jars, or even canning jars, but plastic yogurt containers work well in a pinch). I like to put mine in several different size containers, so that I can remove the size I need depending on what I am doing (2 cups to add to rice, 2 quarts for making soup, etc.). Many people also freeze broth in ice cube trays, then once frozen, store in a large ziploc to take out small amount at a time.