I can't get my head around the way .net does control arrays.

I have two user controls(winsocks) in the form tray, one for listening for connections at all times. And the other will accept a client, when something connects to the first socket. So i need the second sock as a control array or some type to allow multiple clients to be connected. It needs to create a clone of winsock2 at runtime which will then accept the client

How can I do this in .net? In VB6 it was easy, just a simple control array. I need for the code in the events to apply to all the new winsocks that are created at runtime.

Thanks all