Mullvad is cheaper, and probably a bit more trusted, but Proton has port forwarding. Currently I use Mullvad. I don't like the Mullvad's 5 device limit on Wireguard clients though. You can only have 5 devices added to the account, no matter if just 1 or all 5 are currently connected. And after using Wireguard once, I don't want to use OpenVPN again where wg can fully replace it.
Both support cash payments, though Proton makes me feel like they expect it for larger sums of cash:
We cannot be responsible for lost shipments, so we strongly recommend sending your payment using a service that provides a tracking number so you can track the shipment. It’s also helpful to notify us that you’re sending us cash in the mail, so we know to expect it.
While Mullvad asks you not to use registered mail nor send larger amounts of cash. I feel like the latter is implied by asking to notify them. I suppose "Hey, I am sending you 10 bucks via mail." is not what's expected here.
What I absolutely like is the fair pricing. It's same price no matter how much time you buy, whether it's 1 month, a year or two. Even their direct competitor IVPN does this crap (and so does Proton). I value that quite a bit.
So currently Mullvad is winning for me.