Sorry for my bad english...
You can make array of WinSock controls. To do this you need to add one control to form and assign it's index property to 0. Then you can use statement like this:
Load WinSock1(5)
where WinSock1 is name of the control(previously added to form), and 5 is index in the array for the new control(it could be a variable). This means that you have multiple 'copies' of same control and you can manipulate with each individually. After that you can manipulate with this control like this:
WinSock1(5).LocalPort = 80
Winsock1(5).Listen
and respond to events like this:
Private Sub WinSock1_ConnectionRequest(Index As Integer, ByVal requestID As Long)
WinSock1(Index).Close
WinSock1(Index).Accept(requestID)
End Sub
In this situation Index is control's index in the array, so you don't need to track controls yourself.
Hope this helps... Have fun! :)