What is the difference between Atmel ICE, Atmel SAM-ICE and Atmel JTAGICE mkII?
There are some points that you have to contemplate.

Yeah, I know that the Atmel-ICE can support a wide range of the Atmel products but I can guess that many compilers or IDEs don't support it.

For instance, when you work with Keil and have bought it, you don't want to buy an Atmel-ICE because the Keil can't support it.

If you buy an Atmel SAM-ICE, you will have a chance to use it in Keil because the Keil supports it as a J-Link debugger.

On the other hand, if you notice, the Atmel-ICE doesn't support AT91 while the Atmel SAM-ICE does; or for another example, the Atmel JTAGICE mkII has an on-board 512kB SRAM for fast statement-level stepping but the Atmel-ICE doesn't.

I hope this answer will help you.