On a recent walkabout, I managed to fill a 4GB card in a session
And remember, I don't shoot in raw as standard. It was all jpegs! Ok, maybe most people wont take 1000 shots a time. But if you shoot raw, the number you can store will go down rapidly so I'd suggest 4GB as a minimum and higher if the cost isn't too much.
PS I bought the Sandisk Extreme IV, knowing it would probably be faster than the camera can write to it at. With hindsight, I kinda wish I went with the Extreme III and got more capacity instead.