I never had an iPhone before the 3GS so it would be hard for me to compare, but I can say that certain functions do drain battery life faster, push notification, fetching often, screen brightness, safari usage etc.
I just turn off push notifications and fetch manually and I tend to use my phone all through out the day without ever running out of battery.