Zagg for sure! I have had one on my iPhone since 3G and will be getting one for my new iPhone 4. It does a great job at protecting the phone, especially the full body, which is what I would recommend getting. And the best part of the invisible shield is that it has a warranty to go along with it, if the edges ever start to peel or the shield gets damaged due to protecting your phone, you send in the old shield, and they will mail you a new one for free.
I've never tried another product, so I can't say Zagg is the best. However it's what I've gone with and it's worked for me.