Resurrecting the post from the dead because it is one of the first results when you search for M0 and power consumption.
It is indeed possible to reduce the power consumption of the microcontroller down to microamp levels.
The lowest I have achieved is ~3μA @ 3.3V, measured with a keysight B2900A precision source. This is for the microcontroller only, on a board where everything else is removed.
Unfortunately to do so easily, you need to use Atmel Studio and a programmer to flash the device without the arduino bootloader. (It would be possible to do it with the bootloader, but that would require reconfiguring everything and probably breaking most peripheral libraries in the process)
Then, as trampas mentioned, point all unused peripherals to dead clocks like so:
GCLK->CLKCTRL.reg = GCLK_CLKCTRL_ID_USB | GCLK_CLKCTRL_GEN_GCLK4;
GCLK->CLKCTRL.reg = GCLK_CLKCTRL_ID_EVSYS_0 | GCLK_CLKCTRL_GEN_GCLK4;
...
..
In this case GCLK4 is unused and not connected to any oscillator.
And make sure that the clock system is optimally configured for low power consumption. To do so, have only one Generic clock generator active on standby, connected to the 32kHz ultra low power internal oscillator (OSCULP32K), and then connect only the RTC to that clock generator. Don't forget to enable Run in standby for that generator.
If that is the only thing powered on in standby, and no other peripherals are pointed to that generator, you can go down to few microamps.
I have attached an overview of the clock configuration on Atmel START
