Maybe have a look at the OSI Model:
http://en.wikipedia.org/wiki/OSI_modelShort: You have seven layers of abstraction. The highest layer is your application and with going deeper you go nearer to the hardware and physical background of the data transmission. Layer one is the wifi itself. Gladly you don't have to interact with the Wifi hardware, but you need GCW Connect to make a connection with a Wifi Network first. Of course your application could do this on it's one, too, but why would you like reinvent the wheel?
Now have a look at layer three of the OSI model. Sockets are based on the IP protocol. Every device in the network needs an IP. GCW Connect made already, that you got one, lucky you.
Now you need to choose, which protocol you want in layer four, the transport layer. You already mentioned UDP. UDP is like sending a letter. You give it to the post and that's it. You will never know, whether this letter will arrive. Maybe the post car explodes or your destination address doesn't exist (anymore). You don't care. You send your message, put your fingers in your ears and sing.
TCP is like a letter with receipt. You will know, if your message transfer fail. However this takes longer, because after sending your message you wait a couple of times until the recipient (hopefully) answers.
Furthermore UDP is "connectionless", TCP works with connections. With TCP you open a connection and afterwards you can send and receive message and (the important part): The router of yours sees "Ah, a computer of the internal network opened the connection, so it is fine to send the answers of the other part oft the connection to him". With UDP you may get trouble, because there is no connection, from which the routers knows, that a computer from outside has the right to speak to you. Of course the router may have noticed, that you spoke to the server recently, but you cannot trust this unfortunately.
It also depends, what you want to make and if it is bad if message may not be sent. This can be the case for voice over IP. It doesn't matter if some packages didn't arrive. And even if they arrive after a couple of time, they are not useful anymore.
So, how to start?
- You need a working Wifi connection, established e.g. with GCW Connect
- Decide, whether you want to use UDP or TCP. If in doubt, take TCP.
- Have a look at TCP or UDP sockets in Python and send data!
I hope this helped a bit. Networking can be a bitch. Don't give up!