A mix of price, reliability and speed. Both Mullvad and Proton offer great value for money, top-notch security features and are very fast. I'm currently using Mullvad because it costs only 5€/m (flat rate) and recently added a protection against quantum attacks on their Wireguard servers but frankly if you want an all-in-one offer (vpn, encrypted mail, encrypted cloud, etc...), Proton would probably be a better option.
As for my experience with the 3 you mentioned. I've been with ExpressVPN and NordVPN. ExpressVPN is too expensive for what it has to offer and NordVPN has pretty average performances and is too big for its own good.
Just my opinion though.