The Connect module is a web application framework, while Socket.IO is a realtime transport module. You would use one to create web applications, and the other for bidirectional communication between a server and a client.
Here's a few of the things the modules can do:
Connect:
- service static files and pages
- provide cookie-based sessions
- accept file uploads
- handle HTTP verbs (
GET
/POST
/PUT
/DELETE
)
Socket.IO:
- authorize connecting sockets
- send data between server and client with multiple transports
- supports (WebSocket/XHR long-polling/flashsocket/JSONP)
So if you wanted to create a website, you would use Connect. However, if you wanted that website to have something such as realtime chat capability, then you would use Socket.IO.
Whether you should use one module or the other, or use them together, is dependent on your application requirements.