If you use gmail, you can control which pushed messages cause the iPhone to buzz/beep. Just use filters to mark as read any message that you don't want to beep/buzz. This does, of course, assume that your memory is good enough to remember which messages you're already read, but most people shouldn't have a problem with this.I use push for one address (which very few people know) and fetch manually the rest. That way, when my wife emails me I get it immediately, but general people don't buzz the phone until I want to check email.
Push and battery life isn't so straightforward as many make it out to be. Push is more efficient as the client doesn't waste power polling the server when there's no new mail. If you have really long polling intervals then fetch may be more energy efficient.Fetch for me. One to conserve batt life, 2nd is that it is irritating to have emails coming in 1-2 at a time every now and then.
I have push and email alerts and only check when I feel like it. Definitely do whatever works for you.It is disruptive as I feel like I just have to put down everything I am doing to go respond to that email. Now, I just check my mail as and when I feel like it, which can be a few times an hour, or once every 2-3 days.