I agree about planning everything in advance.
As well as timings, I plan what is going to go in which oven when (I juggle between them so that one is very hot for roast potatoes etc and one is less hot).
I also plan what is going to be served in what dish so that I don't have to panic at the last minute about having nothing suitable to serve something in (especially important when you have vegetarians or vegans to cater for as well and you need two separate versions of the same thing).
I always make the puddings the day before. I usually do three. Two sit in the fridge overnight and the Christmas pudding goes in the microwave after we've finished the main course.
Accompaniments like cranberry sauce and brandy butter can also be made in advance.
Make sure you start the day with an empty dishwasher (if you have one) and keep on top of the washing up in the morning. It's very annoying having to wash things up at a crucial time because you've run out of cutlery/plates or whatever.
Finally, and perhaps most important, allocate jobs to others. If you can, ask a visitor to bring something like a pudding. Get someone else to lay the table, sort out drinks etc. Ask for help in bringing out the food when it's ready.
One of my pet hates is starting to bring our food and find that only then do people go and wash hands etc and then some stand around aimlessly getting in the way. Get everyone who isn't actively involved in doing something useful sitting down out of the way!
Oh and one last thing. If you are going have crackers, don't put them on the table. Unless you have a huge table they will take up too much room and once the food is on the table you want it to be eaten, not sitting there getting cold. We have crackers between courses or sometimes after pudding.
Good luck!