SATA and NVMe are the interface protocols, so think of it more like the language the drives communicate in. NVMe is developed specifically for SSDs and leverages PCIe specs to allow for higher throughput than SATA.
The physical form factor of the connectors and drives are different for the different interfaces. Like 2.5", M.2 is a form factor. It was also called "gum stick" for a while since it's only the size of a stick of gum. The smaller size makes it easier to fit in different machines and more mobile applications. SATA also has a M.2 form factor but the connector is slightly different.
Most NVMe drives that people use come in the M.2 form factor. However there are actually NVMe drives that come in a PCIe card form factor that are meant to directly plug into a PCIe slot, as well as something called a U.2 form factor which is similar to a 2.5" SATA.