A hardware wallet has it's own desktop app, just like your typical software wallets. One of the main difference is that the keys aren't going to be stored on your computer, but on the hardware wallet device itself, hence making it more secure than your typical software wallet.
And yes, there will be transaction fees, as with any other typical on-chain bitcoin transaction.
Do I repeat the pattern, buying through something like CBP and then sending them to my HW Wallet, or is there a better way?
There is no better way. You're going to need to send the bitcoin manually from CBP to your HW wallet's address, and again, that includes fees. So to save a bit of money and if the CBP withdrawal fees are too much, probably wait til you have a good amount of bitcoin on your CBP account before withdrawing.