What's the Most Frictionless Way to Get Bitcoins into My Wallet?

Total noob in crypto (bought my first few mBTCs a month back) and a proud owner of a new trezor one hardware wallet.
I want to ask what’s the most direct/frictionless way to get the bitcoins into my wallet?

I have already set up my wallet and did my first transfer into it, it worked. But for that, I had to first sign up and buy the coins via independent reserve, and then transfer it to my wallet address. The independent reserve charged me when I paid my dollars into their account (paid $500, they credited something like $497), then they charged me a few satoshis when I transferred from that exchange to my trezor. Seems very convoluted.

Is there a more direct way, without going through these extra transfers?

Related, the trezor one suite (I am using the Linux version) has an address in it, along with a QR code. Is it safe to keep a copy of this QR code on my phone, and flash it at a bitcoin ATM (or share it via whatsapp to any sender)? Will the ATM send it directly to my trezor one?

Sorry for the noob questions, just trying to figure out the safest and most cost effective ways to navigate the landscape.