In theory, any M.2 compliant host (the thing you plug the M.2 card into) will work with any M.2 compliant device (the card itself), provided the module keying matches. The module keying (the exact physical location and dimensions of the cutout in the card edge connector) is supposed to indicate the exact interfaces available through the connector and what interfaces the device expects to be present. For example, an M-keyed card (the norm for most M.2 SSDs) expects to be able to use some combination of up to 4 PCIe lanes, a single SATA interface, and a single SMBus interface, while an M-keyed host is expected to provide exactly that set of interfaces. Similarly for B-keyed cards (the norm for almost all other M.2 cards) and hosts (though the list of provided interfaces is much longer and has fewer PCIe lanes).
In practice however, it is rather uncommon to see an M-keyed USB-to-M.2 bridge that actually provides PCIe lanes be marketed as a ‘USB to M.2 adapter’. They’re a lot cheaper to produce without the PCIe support because bridging USB to PCIe is far from trivial, so a lot of manufacturers make cheap ones that don’t do that.
The term you want to use when searching is ‘USB to NVMe adapter’. Those will be a bit more expensive and are pretty much always USB-C devices, but will almost always work for any NVMe card you get, and if you find a good one it will also work just fine with legacy SATA cards and support a Thunderbolt 3 upstream connection in addition to plain USB.