Free as in you pay for your worker nodes, but nothing additional for operating the platform itself. You do lose control over your control plane nodes and etcd however.
No, there is no extra charge for gke. You pay for the nodes you use and you pay the same price whether you are using just cloud compute or whether you run those same cloud compute nodes in a gke.