"Programmer / Debugger"

I have stupid questions about being able to program Arduino and "Arduino Compatible" boards in Atmel Studio 7. They are only stupid because I feel stupid for not knowing things I don't know when I realize that they are unknown unknowns. Those are the worst.

I'm using Wio Lite MG126. I have a love hate relationship with the Arduino IDE and have been dabbling with Atmel Studio 7 and the vMicro plugin trying to bridge the gap until I know how to use either, or, or a combination of both to get things done. I know there are other options and people have opinions about all those options but this is what I'm using. Depending on the attitude of who decides to reply here this site might not be the right place to post my questions but I'm doing it anyway.

I've avoided forum posts about programmers, bootloaders, and debuggers because frankly I didn't know what they were talking about or. When you start working with this stuff you need to start somewhere and without a mentor I think some of the more important things get left out of tutorials unintentionally.

My programs that use the vMicro plugin work but I can't seem to program my device over usb when I am using a proper "atmel project". I do have some other arduino boards that have been able to be programmed over USB. I don't get why.

Why can't every board programmed in Atmel studio or Arduino?
What hardware is require on the board to do either?
What software is required on the board to do either?
What hardware is required as a programmer?

I started looking at all the different programmers out there for all the different interfaces and I had to lay down.

What other questions should I be asking if I'm serious about being able to program/debug boards that use the SAMD21G chip?