I am using an iPhone 3G since the day it was launched, in July 2008, and I am still completely satisfied with the device. So, why update? Not for the new gadgets, which are secondary for my use (camera, video, voice control, etc.), but simply for the speed and the memory increase. The iPhone 3G can run all applications in the App Store, but for the most complex ones it feels somewhat sluggish (this has improved a lot with the OS 3.0, but still, some applications are quite slow). A simple example that I use very often is OmniFocus: the application is stable and perfectly usable, but it does not feel "reactive". I am sure these applications can run like a breeze on the new terminal, and I am also sure that all applications will do so for a long time.
The reason is simple: there is a huge number of iPhones 3G out there, and Apple cannot afford to accept applications only running on 3GS. Now, whatever application runs on the 3G, will run faster on a 3GS, mainly because of the double RAM available.
The conclusion is that I will upgrade as soon as I manage to find a 3GS without having to subscribe to a 2 years contract.
Update: Orange in France sells the 3GS with no contract, just got one. I will probably post more on the subject soon.