Gift giving is a under-appreciated art, I think. It takes a lot of work.
In our family we have two styles: the make a list style and the surprise approach.
Making a list: this is the efficient method and my boys, at a young age, became adept at creating an excel spreadsheet (complete with links to Amazon) with the various games etc that they wanted. For the gift giver, especially when you are thousands of miles away, it guarantees that you are giving the person something that you know they want. For the receiver, it is satisfying knowing that you will get something that you looked forward to and asked for.
But I always like going rogue, and going off list. Shopping for the boys, I've always made sure that the main gifts from us were not on their list, a complete surprise. My mom also taught me to make sure the nicest gift was from "Mom & Dad"; let Santa give the others! Billy expressed that he found these to be the most exciting part of the gift experience because they have always been a wonderful surprise (and usually something "really, really cool").
Part of the thing I love about Christmas is shopping for my siblings, especially my sister. I guess it is because we share many of the same tastes and also she loves gift giving herself. She is a wonderfully creative gift giver. When the boys were young, she alway came up with fabulous gifts that they didn't know they wanted. One of the biggest hits was an Indian teepee. They received it when Bobby was about 6 and it remained in our basement until last year, and I swear they used it all those years. I think there were sleepovers into high school, when someone slept in there!
My brother Bill claims to hate buying gifts, but whenever he picks out something for me or my sister, it is always perfect!
It takes a real skill to learn how to be a good gift giver: time, empathy and creativity are important and really knowing the person helps a lot! Not that there aren't mistakes, and I've made my share of those. But a lot of the fun of the season is thinking about the other person and trying to imagine what they would enjoy or.... you can always refer to the list!