Ok here's my thoughts having had a 3G myself (until it died few weeks ago), playing with my girlfriends 3GS on a regular basis and having messed around with my brothers iPhone 4.
Obviusly the jump from to 3G to 4 is massive, i was beginning to get very frustrated with my 3G towards the end of it's life. It was slow, unresponsive and just generally not a pleasure to use (made even worse when I got my iPad ) If you are upgrading from a 3G then I would go for it if you can afford the 4. This is where my but comes in though. Persoanlly I don't think the 4 is that big a deal when compared to the 3GS with the new os on it. Sure the camera on the 4 is a bit better, shooting HD video is nice, the new design is lovely and obviously the screen is awesome. But that's about it. I wasn't blown away when I had a play on the iPhone 4 compared the the 3GS, it didn't seem that much faster anyway. The only thing was the screen. It is gorgeous, but I still think the 3GS screen is very good, it takes good pics and you can still do video. Guess it depends how much the screen means to you.
Think I'm gonna plump for a cheaper contract and a 3GS for free to get my iPhone fix back.