Something that's available when using Atmel Studio is the Atmel Software Framework that gives some hardware abstraction like the Arduino libraries. It allows the same code (within reason) to run across multiple Atmel platforms including the AVR and their ARM based products. I've only just started using it for a new project but here's an example of some code:
#define RADIO_RX IOPORT_CREATE_PIN(PORTA, 0)
ioport_set_pin_dir(RADIO_RX, IOPORT_DIR_INPUT);
data_in = ioport_get_pin_level(RADIO_RX);
It appears to have very good support for on-chip peripherals such as USB, SPI, USART etc. across their range. It also has some support for external peripherals such as an SD card with a FAT software stack and some LCDs although in that regard it seems limited pretty much to the devices they use on their development boards.
While the language is the same one thing that might add to the learning curve is you'll probably find less example code and high-level libraries using ASF, for instance that interface to a particular RF transceiver or GPS receiver.
Often though those sorts of libraries that attempt to hide the hardware layer too much can lead to unexpected problems when you don't know the underlying operation and how things will work together. From that point of view I think ASF gives a good level of abstraction to make things easier to read and port between Atmel devices while still giving good control over the hardware.