Android battery usage (3G, HSDPA and Edge) In order to reduce battery usage I checked the Use only 2G networks from Settings &gt; Wireless &amp; networks &gt; Mobile networks on my Android. Then I noticed the E icon appeared instead of H on the network indicator in the notification bar. If I am not mistaken, H stands for HSDPA and E for EDGE and the HSDPA is a 3G technology.

Now the question is: What is the relation/difference between 3G, HSDPA and EDGE? What is the best way to increase battery life between charges, but to maintain internet connectivity as well?
Your understanding is correct. GPRS &lt; EDGE &lt; 3G &lt; HSPA. 

HSPA = HSDPA (High Speed Downlink Packet Access + HSUPA (High Speed Uplink Packet Access)

The difference between the three lies in the bands i.e. frequencies they use to communicate with the network. Edge uses the same frequency as the phone uses to transfer voice and SMS to the network. Hence, you may notice (atleast I have), that the E symbol will disappear when you are on a call - assuming that you have selected Use only 2G networks

To answer the last part of your question, I usually keep my networks on 3G/WCDMA when I know I am going to be near a charging point. I can go nuts with my data then. However, when I am travelling, and network coverage can be sparse, I force the phone to use GSM only which in your case is Use only 2G networks. This saves a lot of battery, simply because its more battery intensive for the phone to communicate over the 3G radio, rather than the 2G. 

Edge can be pretty decent, if you just need to be online on Gtalk, Watsapp, and need to reply to some lightweight emails. It does the job. 3G or HSPA, is necessary for more intensive applications like Dropbox, Youtube, or one of those streaming music services that I can't remember at the moment.