(from our friends at Wikipedia)
Gifts are wrapped, but are not labeled to reflect a specific sender or recipient. Gifts are typically inexpensive, humorous items or used items from home and sometimes, they are just plain trash; the term white elephant refers to a gift whose cost exceeds its usefulness. While the first use of this term remains an item of contention among historians, a popular theory suggests that Ezra Cornell brought the term into popular lexicon through his numerous and frequent social gatherings, dating back to as early as 1828.
All participants draw a number (from a hat, perhaps) to determine their order.
The participant with #1 unwraps any gift from the pile and then shows it to everyone. Each successive participant, in the order determined from the drawing, can either 1) "steal" an already opened gift (if there's one they really like) or 2) be adventurous and go for a wrapped gift from the pile. If the participant chooses to steal, the person whose gift is stolen now repeats their turn and either 1) steals another person's gift (they cannot immediately steal back the gift that was just stolen from them) or 2) unwraps a new gift.
This cycle of stealing can sometimes continue for a long time, until a new gift is chosen, at which point the turn is passed to the participant with the next number from the drawing. (An alternative to the drawing is to sit in a circle and take turns in a clockwise or counterclockwise direction.)
Since items can be stolen, the item in your possession is not yours until the game is over. However, this is often amended with a rule declaring a gift "dead" or "safe" after it has been stolen a certain number of times (usually two or three). This helps the process go more smoothly (avoiding, for example, the hypothetical scenario of the same gift being stolen by every successive participant) and limits the disadvantage of being among the first to choose gifts.
(I particularly like that they created links to explain "clockwise" and "counterclockwise" :) )