Sometimes manufacturers put slower memory on the 256mb version, so you have to watch out. If the memory speed is the same, then obviously the 256mb version is better, but given that it usually costs much more than a 128mb version, it's not worth it. Only the most modern games use more than 128mb, and even then, usually only when you play at max quality settings using high resolution and AA + AF. This, however, means that the gpu itself must be fast enough to handle all the added data and processes. And this is where the difference between a 6800gt and 6600gt really becomes evident, as the 6600gt is just not powerful enough to handle all that detail, and falls far behind the 6800gt when you really crank up the resolution and image quality.
Cliff notes: 256mb for high end card, 128mb for midrange card.