SockJS has more server-side options available. If you don't want to be tied to Node.js, then it may be an option. The scaling seems to work best, from some benchmarks using PyPy to host the server-side portion.
socket.io has more transport options, which include Flash. Even if you don't like flash, it does have the option for a real WebSocket transport, which may work better depending on your implementation desires.
The fact is, either will get the job done, it just depends on your desires. I would suggest creating a trivial application in each, and see if one's APIs feel more natural to you.
Personally, I'm more inclined to use socket.io ... I will also say that if you need to scale using clusters, you will probably also need to map out a strategy to use a pub/sub server (such as redis) as different requests may come to different processes that don't share memory state.
Also worth noting, is there is a similar framework for .Net called SignalR ...