Video memory is used for the same reasons that any other memory is used -- to store data while it's being worked on by a processor (in this case, the GPU on the video card).
If there is not enough memory on the card, your game will have to shuffle data back and forth across the AGP bus to the main system memory (or even the hard disk, if your system memory is too small!), which hurts performance. That said, the general consensus is that none of today's games are really using more than 128MB of memory, unless you want to run at resolutions higher than 1600x1200 with AA/AF. However, 128MB is much preferable to 64MB, which itself is a big step up from 32MB.
As for your last question, the price difference between 128/256 is still pretty significant (~$100-150 for the high-end cards). They use very fast RAM, and it isn't cheap. Plus, they get to put a number that's twice as big on the box. It *must* cost twice as much, right? right?