PC gaming has come a long way that most games nowadays just work, even on Linux. I’m surprised at how many games work without even forcing Proton and no bugs at all, except those that also exist for Windows. That and my controller is seamless. Even VR is working better now.
On the other side, it seems console gaming is more complex than it needed to be and we’ve seen how consoles actually hold back gaming, as a whole, like the situation with the Xbox Series S that has forced developers to either cut content or remove features to make it compatible as that is Microsoft’s requirement when developing a game to be released for their consoles. I don’t remember hearing it, but I’m sure the same is true for the PlayStation side too with the lower end model. Whereas that doesn’t happen for PC exclusive releases. If your PC won’t run it, it’s probably because it’s outdated and that’s a you problem, not something everyone else needs to suffer for because a company like Microsoft is forcing devs to make it compatible with outdated/lower end hardware.
I can’t remember trying a game on my Steam Deck and it didn’t work. Unless you mean setting up a Proton version, then I’ve had that, but the game eventually runs in 9 out of 10 cases. That is exclusive to non-Windows OSes and it could be solved by automating based on the db and make the setting easier to find and change for users, maybe even prompt the user to try another Proton version kind of like Windows’ troubleshooter when it detects a program didn’t install or run correctly. Or when devs make their games natively work with Linux/macOS like they do for Windows which is why games just work there. And if the game doesn’t run well, you just lower the settings which I’ve done for many games with no trouble. Even console games now have the same settings to lower quality to get better performance.

What you want is cloning software. You can use proprietary software like Acronis. I have used it for years but it costs.
Or you can choose free software like Clonezilla that you will flash and then boot into on a computer with the old drive and the new drive attached via an adapter. I don’t think it works if the drive is in the computer. Last time I did this a month ago, it didn’t detect the internal drive, only the drives we had attached via USB adapters.
You’ll be able to clone the old drive to the new one and even customize if you want the sizing to remain the same, relatively speaking, or let it consume the new drive naturally, which I prefer.
Once you do that, then you can move on to doing dual boot.
Be careful doing it this way though. Because dual booting by installing Windows after Linux usually requires you to reconfigure your Linux bootloader (GRUB, systemd, etc.) because Windows will override it with its own bootloader that doesn’t recognize any other OS. It’s not impossible, just annoying so most people opt to install Windows then install Linux for dual booting in that order. If you can, you might choose to install Windows on the new drive and then install Zorin afterwards and then bring over your old files and settings after the fact. That might be an easier method here than cloning.