Personally, on mobile I like Trust Wallet and on desktop/laptop I like MetaMask.
Metamask wallet only support ether and ethereum tokens. Also it is a web wallet as explained above which are most vulnerable to online attacks. Trustwallet is not open source anymore.
To deal with altcoins, you will be better with open source hardware wallets like Trezor.
2) Buy on an exchange (such as Binance or Coinbase) and then send to your wallet address.
Do not forget some people buy on centralized exchanges and got discouraged to send to noncustododial wallet because of the exchange high withdrawal fee, especially for bitcoin and ether. Centralized exchanges can be hacked, gives no full control, and it's never your coins on blockchain as you do not have the keys, the exchange owners have the keys and the full control that can overide yours. Best for people to have their coins on reputed noncustodial wallet.
3) Do airdrops/faucets/bounties..etc and cash those out to your wallet address(es).
What has been noticed for long is that faucets are no more profitable but a complete waste of time. Also there are needs to be careful of airdrops not to directly or indirectly lead to scam.