SSD prices have dropped & are continuing to drop, and with the holiday sales a NVMe drive might be very tempting. That makes it more likely I think that some folks here might consider buying one, and since reliable info is Very scarce, I thought it a good idea to post this. Warning -- there's more than one Gotcha...
Some PC motherboards, laptops, miniPCs etc. now have one or more M2 sockets -- there are also add-on cards with M2 sockets. A M2 SSD drive very basically takes the innards of a 2.5" SSD, & mounts them on a small board that's similar in height to the regular RAM sticks you use in a PC, but shorter in length. A M2 SSD can use SATA, same as a 2.5" SSD, or it can use PCIe or NVMe, bypassing SATA & its caps or limits, connecting more directly to the CPU. That can make data transfer speeds, reads & writes much faster.
wikipedia[.]org/wiki/M.2
wikipedia[.]org/wiki/NVM_Express
A caveat: Windows installed on a conventional hard drive will suffer from that hard drive causing a bottleneck, slowing things down when Windows needs to read or write lots of data to that drive. Putting that copy of Windows on a regular SSD -- and it probably won't need to be a very fast SSD -- will cure that hard drive bottleneck, so now it's stuff like the CPU & Windows itself limiting how fast things happen. That means that any extra speed gained though using a NVMe drive like as not won't cause things to speed up, unless of course you're transferring Lots & LOTS of data, far exceeding the normal amount of reads & writes that occur just running Windows & common software.
Regarding SSDs... They are not by any means all created equal. There are different brands & performance levels of the controllers used by SSDs, & the controller's related electronics also varies -- similar to graphics cards, some, usually cheaper models may have fewer lanes for data transfer. The firmware also varies across makes & models, so 2 drives that appear to have identical or near identical components may vary quite a bit when it comes to performance. To cut costs, some SSD controllers use your Windows device's memory, rather than having their own RAM, which surprisingly may not have that great an impact on performance, but they only work if you're running Windows 10.
A few notes regarding the M2 socket itself... 1) it uses a Tiny screw to hold the board in place, so make sure you have that screw (!), and that you have good access to install it -- IOW you'd probably want a PC on its side with good lighting & whatever out of the way, rather than trying to squeeze your hand into a tight space. 2) research, which will be difficult because info tends to be scarce, since depending on the make & model of your hardware, using the M2 socket for a drive may turn other things off, e.g. it can cut down the number of lanes available for a graphics card, or disable some of the regular SATA ports. 3) research again, because not all M2 slots handle SATA or NVMe -- it depends on the make/model. 4) make sure there's adequate cooling, since these drives, particularly NVMe drives, can get hot. Some come with heatsinks -- some motherboards come with M2 heatsinks.
Regarding NVMe drives... Windows 10 has drivers -- they have to be added for win7. Those Windows drivers are sub-par -- Intel & Samsung have better drivers available, but not AMD. A NVMe drive will not work the same as a regular 2.5" SATA SSD -- it will show up in Windows running off another drive, but the BIOS may not see it initially. All SATA drives might have to be disconnected in order for Windows setup to see & install to the NVMe drive. You cannot clone a copy of Windows from another drive/partition -- it will not boot, Ever. The BIOS *may* have to be in UEFI mode to boot to a NVMe drive, but I could not find confirmation other than Intel docs talking about Intel brand NVMe drives, and then I found one reference that said it Had to be UEFI, and another that only said it was best for peak performance.
It's not documented anywhere that I could find -- & I looked over a 3 day period -- but you need to use a Windows migration tool to copy an existing copy of Windows to a NVMe drive. I finally found a couple of forum posts that mentioned using Macrium's Redeploy tool, or the utility that Samsung provides -- otherwise it never would have occurred to me... AFAIK migration utilities were intended to move Windows to new hardware, not clone a drive/partition. I know I've moved copies of Windows around to different drives or partitions dozens of times, and I've never used anything but the average backup app or cloning software. The difference as far as I can tell, after playing with this in some depth, is in the Windows boot files themselves, but like everything else concerning NVMe drives, I couldn't find the slightest bit of documentation.
BCD is the core of Windows' boot files, and it actually represents a registry hive. There's info that Microsoft has published, used by EasyBCD for example, that includes the minimal data fields that are required. The data stored in the BCD hive on a NVMe drive surpasses that. You can't edit the BCD off the NVMe drive -- the values change when you open it. Running that fresh copy of Windows on the NVMe drive, open the BCD in EasyBCD, and the data you can see doesn't change, but what you can see is incomplete. Using the migration & boot repair tools on a Paragon HDM 16 Advanced USB stick, I got a cloned, & working copy of win10 on a new partition on the NVMe drive -- using EasyBCD, comparing the BCD from my failed attempts with the working clone, there's no difference in the BCD data. Nothing in the copy of Windows itself changed, as far as I can tell, so I think there has to be something different about the data the BCD hive stores. Regardless, using a migration tool is the only way to get a cloned copy of Windows working on a NVMe drive.
The boot menu on/for a NVMe drive can be [Very] twitchy... After migrating my main copy of win10 from a conventional hard drive to the NVMe drive, I deleted the partition that had held that copy of win10, then expanded the partition of my base copy of 10 [the one I use to repair stuff when Windows is broken]. The original partition wasn't moved or anything -- I just made it bigger. Normally the BCD just points to the partition -- when you add a copy of Windows to the boot menu in EasyBCD you just give it a name and select the drive letter -- so this sort of thing generally was not a problem in the past. But that copy of win10 would no longer start from the BCD on the NVMe drive -- I had to remove it & re-add it using EasyBCD. The data that EasyBCD showed was exactly the same, before & after (?). During the course of playing with this stuff, with a new copy of win10 installed & working, trying to get a cloned copy working on another partition on the NVMe drive, the BCD on the NVMe drive broke at least a dozen times, so I had to then restore a backup of the EFI partition where that BCD lives. In fact, I believe I've restored that backup of the EFI partition more times than any other backup I've had over the last 10 years.
Note: During a few of the many, Many Google searches I performed, I came across posts by one guy in the Tom's Hardware forums repeatedly saying that a Samsung brand NVMe drive had drivers embedded in the firmware. What's more, during a fresh Windows install these drivers were copied to the EFI partition where the boot files reside. I came across these posts often enough that I thought it worthwhile to add a disclaimer here, lest anyone go down that rabbit hole. One, nothing should be able to effect the UEFI BIOS OS, so adding drivers to that OS should be impossible. Once the BIOS hands everything over to Windows, then whatever drivers are installed in Windows take over. Two, this guy seems to be the only one posting this info that I could find -- nothing whatsoever to back up any of it. Three, looking at the boot files of a fresh, working copy of Windows 10 on the NVMe drive, I couldn't find a trace of anything out of the ordinary -- nothing that even hinted at being a NVMe driver.
When all is said & done, my only consolation is that the NVMe drive was only about $10 more than a conventional, 2.5" SATA SSD, so while I may have lost a few days of my life, I don't think I wasted a lot of money.