The difference is SSL encrypts what you send and receive to a website, but not that you are talking to that website. When you connect to macrumors.com or some other site you have to tell the network to get you connected. Once you are talking to macrumors.com server it follows the SSL protocol to establish the encrypted connection between your computer and their server. But the network can see or block your access to macrumors.com.isn't connecting to websites over HTTPS also encrypted?
With a vpn you establish that encrypted connection to a vpn server. Then you relay requests to that server that you want to talk to macrumors.com. The vpn is a middle man that you are supposed to trust to carry your messages and requests to connect to other servers. Even inside the vpn connection you will use SSL to talk to macrumors.com. So they can't see what you are exchanging with the website but they can see that you are talking to them. And to the local public wifi that you are using, they don't know that you are viewing macrumors.com at all. To them you are just talking to the vpn server (they may not even know it is a vpn server).
Some people jump through multiple vpn connections to really hide what they are doing.