Non c'e' una risposta breve alla domanda "come si fa".

Se non hai mai utilizzato i socket, devi studiarne il funzionamento, che e' abbastanza simile per Linux e Windows (sebbene bisogna gestire le differenze tra i due sistemi ...).

Esistono tante informazioni su Internet. Ovviamente non c'e' una "guida unica".

Non so da dove tu debba iniziare (hai idea di cosa sia un indirizzo IP? cosa conosci del protocollo TCP? ...) ma la soluzione che ti consiglio e' quella di prendere un bel libro sulla programmazione in rete (magari in inglese se hai confidenza con la lingua ...) e studiarlo, eseguendo i vari esempi pratici che si presentano.