What's the difference between different Ethernet Shields?
Clearly the 'best' one is the one that meets your requirements (or is the most expensive - that's always the best, right?).

You say you need an ethernet shield - can you explain why? Without that information, it's almost impossible to tell you which is the most suitable.

If you are looking at IoT applications, it may be that an Ethernet shield isn't the 'best' thing for you. If you just want access to the local IP network, you could use any of those. If you want the 'best' library of functions to support your application, that may affect which module you use. 

For me, I think the best module is the cheapest one that gives me connectivity: http://www.aliexpress.com/item/Hot-Sale-ENC28J60-Ethernet-LAN-Network-Module-For-Arduino-51-AVR-STM32-LPC/32254842414.html

The W5100 is also a good choice, but only if it is under $7