I've been reading The Da Vinci Code recently. Is it a good book? Not really, but I found myself unable to put it down. But I've heard people who've read the book and seen the movie tell me that the book was much better. This does not surprise me.
I can't think of any movie that was better than the book it was based on. So, why are books better than movies? This is an easy question to answer. When you read a book, your imagination is way more vivid than any movie with CGI special effects and costumes could ever be. In addition, the writer of a novel is not constrained by any budgetary limitations or the pressure to make a movie short enough to watch without having to stop and take a piss as Alfred Hitchcock recommended.
Unlike a movie, a novel is something you live with. It can't be consumed in a couple of hours on a Saturday afternoon. I tend to take a week or so to read a book. Most of the time, I read a chapter or two at night or while doing my laundry. I begin to look forward to the next installment in the story, and I admit that I have forgotten my laundry because I was so engrossed in the book.
Movies leave me feeling flat and unsatisfied. This is because they are so damn short. Movies like The Godfather or Pulp Fiction are exceptions. But like novels, these flicks are sprawling. They are dense. There's a lot of meat to them. You can lose yourself in them which is a cornerstone of any great aesthetic experience.
Movies have made up for this brevity by breeding endless sequels. But the best are sagas like Star Wars or Lord of the Rings. Plus, television is also getting way better as the writers of these shows exploit the serial nature of the medium to do extended stories such as with Lost or 24.
If you want to make a good story no matter what the medium, you have to give it substance. You have to flesh out the characters. You have to develop the plots. You have to give people something to become engrossed in. Basically, it means you have to put a lot of work into it. This is why the greatest novels also tend to weigh the same amount as a cinder block.