Today, Google announced "Push Gmail" for iPhone and Windows Mobile. This is incredible news for users who need or want instant email notifications on their iPhone:
You can set up push Gmail by itself or choose to sync your Contacts and/or Calendar as well. If you're using an iPhone, make sure you're running iPhone OS version 3.0 or above (on your device, click Settings > General > About and scroll down until you see Version). If your software is out of date, follow Apple's upgrade instructions. Then, visit m.google.com/sync from your computer for set up instructions. If you're already using Google Sync, you can just enable push mail.
Once you're set up, new messages are normally pushed to your phone within seconds. While this type of speed is pretty awesome, push connections tend to use more power than fetching at intervals, so don't be surprised if your battery life isn't quite what it used to be. We've done a lot of work to optimize power usage, but if you prefer to save battery life, you can always turn off push in your phone's settings and fetch mail every 30 or 60 minutes instead.
Update: Smoking Apples wrote a very helpful article on how to setup and use Push Gmail.