There is no one single "best" time -- just whatever fits your family. :-)
My mom has an artificial tree, so we would always put hers up the day after Thanksgiving and leave it up till the day after Christmas.
The last two years, my husband and I have had a real tree, which we cut down from the woods ourselves. That's fun (in some ways; not so much in others)! If we don't do it during his Thanksgiving break, we'll have to do it on some weekend between -- so it just depends on how our lives are operating at that given time. Last year, we got a tree the weekend after Thanksgiving and it still looked nice after Christmas, but it was *very* dry (we burned it in our yard when we were finished, and it took less than 3 minutes for it to completely burn up), so that might be something to consider if you're getting a real tree.
Three years ago, we didn't even have a tree at all, because my husband was driving over-the-road, and I wasn't about to take a baby and a young toddler out to get a tree (even from a store), drag it home, set it up by myself, etc. So, I just strung Christmas lights around the room, and put ornaments on the lights. The kids liked it, it kept the ornament high, and I didn't have to worry about watering a tree. :-)
If you're worried about your pets or your kids getting ornaments -- you may be in for some training and discipline! But keep your precious and/or breakable ornaments high, if possible, and put soft, cloth, low-value ornaments down low, just in case.