Always read the book first
I've been saying it for years now, but I'll say it again: seeing the movie before reading the book is always a bad idea. For one thing, nine times out of ten, the movie is nowhere near as good as the book. And in the rare cases where it is better, it still leaves out huge chunks of the book, while totally spoiling other parts! Also, the book is invariably always written (long) before the movie is made (at least, it is for every book-movie combo that I can think of - maybe there are some exceptions). So if the author wrote the book before the producer made the movie, it makes sense that you should read the book before seeing the movie (I know, feeble logic alert - but hey, who asked you anyway?).
The reason for my sudden urge to express this opinion, is a particular series of books that I'm reading now. I've (stupidly) been putting off reading Harry Potter for many years now, but have finally gotten round to reading it at the moment. Unfortunately, I saw two of the movies - 'Harry Potter and the Philosopher's Stone', and 'Harry Potter and the Prisoner of Azkaban' - before starting the books. Although I was reluctant to see them, I was able to put off reading the books by myself, but not able to get out of seeing the movies with my friends.
Luckily, when I started reading 'Harry Potter and the Philosopher's Stone' (that's 'sorcerer' for all you Americans out there), I couldn't remember much of the movie, so the book wasn't too spoiled. However, having a predefined visual image of the characters was a definite drawback (unable to let the imagination flow), as was knowledge of some of the Potter-lingo (e.g. 'muggles'), and of the nature of magic. 'Harry Potter and the Chamber of Secrets' (which I still haven't seen the movie for) was a much better read, as I knew nothing of the storyline, and had no predefined image of all the new characters.
I'm up to the third one now ('Prisoner of Azkaban'), and having seen the movie not that long ago, I can remember most of it pretty clearly. To be quite honest, having the movie in my head is ruining the book. I'm not digging any of the suspense, because I already know what's going to happen! There are no grand visual concoctions growing in my head, because I've already got some shoved in there! It's a downright pain, and I wish I'd never seen the movie. I'm definitely not seeing any more 'Harry Potter' movies until I've finished the books.
This is in contrast to my experience with 'Lord of the Rings'. I honestly believe this to be the best book of all time, but perhaps if I'd seen the movie(s) first, rather than reading all the books twice before seeing any of the movies, my opinion might differ. The movies of LOTR are absolute masterpieces, no doubt about that. But seeing them after having read the books makes them infinitely more worthwhile. When you see the landscapes on the big screen, you also see the kings and queens and battles and cities of long-gone history, that aren't part of the movie, and that non-readers have no idea about. When you hear the songs (usually only in part), you know the full verses, and you know the meaning behind them. And when things are done wrongly in the movie, they stick out to you like a sore thumb, while to the rest of the audience they are accepted as the original gospel truth. Tragic, nothing less.
So my advice, to myself and to all of you, is to always read the book first, because it's always better than the movie, and while watching the movie (first) spoils the book, doing the reverse has the opposite effect!