Just wanted to share my experience to help other users willing to upgrade to a larger NVMe (boot disk) from the standard 512GB Samsung NVMe coming with your gaming laptop. Gaming Laptop ASUS GL703GS here.
1. IMPORTANT: change the disk driver of your current boot disk (Samsung NVMe uses a custom driver!). Be sure to change it to the generic "Disk" driver from Microsoft before you start transferring your old boot disk into the new one. This is crucial or you'll loose (like I did) half PM trying to understand why new NVMe didn't boot after disk cloning even when keeping the exact same partitions scheme and offsets!
2. use Macrium Reflect 8 to upgrade to a larger NVMe (in my case from 512GB Samsung NVMe to a Silicon Power SSD PCIe M.2 NVMe 1TB Gen3x4 R/W up to 3400/3000MB/s). Why Macrium? Because it's faaast, and allows you to move usual recovery partitions to the bottom-right of the disk in one go, to extend central C: Windows partition later from within Windows 10 through usual system
Disk Management tool. I have Macrium Reflect Pro but even the Free/Trial version should allow to perform these tasks. Alternative cloning/moving partitions tools: AOMEI Partition Assistant, MiniTool Partition Wizard, NIUBI Partition Editor and more...
IMPORTANT: to be safe, just move the recovery partition(s) to the bottom-right to leave some "unallocated space" after C: but don't resize C: directly. It could confuse Windows 10 on first boot into the new larger disk. Do this later (see next paragraph).
3. once you successfully booted into Windows 10 for the first time, on the new disk, just open Disk Management tool included in Windows, select partition C: and extend it to fill the previously unallocated space right after C: partition on the right (because you already moved the recovery partitions to the bottom of the disk as mentioned in point 2!).
Done.
Effortless migration to a larger NVMe boot disk.
P.S.
As an alternative to point 1 if you forgot to change NVMe disk driver and your cloned disk fails to boot into Windows 10 because it tries to start using the old Samsung NVMe custom driver, you can:
a. when Windows fails to boot twice it should automatically try to boot in diagnostic/repair mode ("Your PC didn't start correctly..."). At this point choose "Advanced options", then "Troubleshoot", then "Advanced options" again, and "Start-up Settings" which allows you to reboot in advanced mode and select Safe Mode without networking boot (key number 4 usually). There are also some videos on YT if you need,
like this one.
b. once you booted into Windows 10 in Safe Mode, type in "Device Manager", and from there you can finally change Disk driver to generic Microsoft disk driver for the new NVMe. This should allow Windows 10 to finally boot with the new disk, no more boot fails.
// ASUS SCAR18 G834JY, i9-13980HX, 4090 laptop 256bit 16GB, 32GB 5600MHz RAM, 18'' 16:10 2560x1600 240Hz G-Sync internal screen, external UWQHD 3440x1440 Mi 34'' Monitor with Freesync, NVMe, 8BitDo Arcade Stick, Vader 4 Pro controller, ROG Strix Carry mouse.