Last year I set up my own VPN using Wireguard and hosted it on a VPS in Azure and it worked great. I could connect to it from my phone when using public wifi networks to keep my traffic secure.
In the process of configuring everything I learned a lot about server management, networking, using linux, and using cloud services. They make hosting apps pretty easy but Azure in particular has some very expensive rates.
Since my Azure credits expired and I haven’t gotten around to exploring other server options I’ve been using the free tier of ProtonVPN, but setting up my own was an enjoyable learning experience.