What is the difference between ECDHE-RSA and DHE-RSA?
Lets start with the similarities.
- Both ciphersuites use ephemeral keys for the Diffie-Hellman process. (that is the "E" in the name). This provides forward secrecy.
- Both ciphersuites use RSA to sign the server's emphermeral keys and thus protect the exchange against man-in-the-middle attacks (that is the RSA in the name).
Now for the difference.
- ECDHE-RSA uses Diffie-Hellman on an elliptic curve group while DHE-RSA uses Diffie-Hellman on a modulo-prime group.
What upsides has ECDHE-RSA over DHE-RSA?
There is a well-known attack that works for conventional DH but not for ECDH.
As a result to get the same level of assumed security* DH needs a much bigger group than ECDH. That means slower computations and more network traffic.
Getting into the messy world of practicalities some clients only support conventional DHE while other clients only support ECDHE. Furthermore Java 7 will fail the handshake if DHE is used with a prime larger than 1024 bits**.
So if you want wide client compatibility, strong cryptography and forward secrecy with as many clients as possible than you should use ECDHE as your preferred option and DHE (with a suitably big prime) as the second choice.
* That is amount of computational effort needed to crack it given the best currently known attacks.
** Noone has publicly admitted to cracking it but it is suspected that well-resourced attackers could do so.