Web wallets or any wallet that you have to login with email/username and password using websites are not a safe. Desktop wallet is safe but it can be vulnerable to malware and can steal any information on your computer if its connected to the internet. But you can do an offline transaction with some desktop wallet using electrum so it would be the safest way of using desktop but its time consuming.
But Hardware wallets are the safest wallet, it can't be infected with malware even you inject it to an infected computer, so you're totally safe, but the downside of using it is you can't use to send if the HW lost, so you have to buy a HW again and recover your funds using your 24 seed. Or you can import your seed to any trusted wallet so you can use it in sending but this is not recommended the wallet might be compromised.