Is it possible to create a socket based multi-player game client using html5? Does html5 allow socket programming?
You can use the WebSockets draft standard in supported browsers. According to this question, Chrome, Firefox 4, and Safari support it.
HTML5 allows a limited bi-directional communication with server via the WebSocket object. It may allow you to write games what use simple networking but it does not allow raw access to underlying network. So the answer to your questions is:
Yes, but this depends on the complexity of the game and you will have to proxy all messages via the server.
No it does not allow socket programming as, say, as a programing platform such as Java does.
Depends on how "big" your multiplayer is going to be, I've played around with WebSockets recently you can take a look at the results here: http://github.com/BonsaiDen/NodeGame-Shooter
It's definitely pretty easy to get started with this, but the challenge is to keep the actual bandwidth usage low, just using plain JSON will let the bandwidth skyrocket.