should the client only send data to server when it makes a move ore on a continual basis thru a thread loop.?
It really depends on the kind of game. If fast action is required, a loop may be better, because sometimes the network isn't working optimally, then if a package sent to one client is lost on the way, the client might not know something is happening, but the loop will send update info soon so the client will catch up even after a network clitch.
If you use a protocol that assures everyone gets every package of information before the action continues, you can do it without the loop.
Maybe you should implement both and try them out, which one actually works faster when YOU have done them? Such different modules mean a bit more work, but not much compared to all the other work you're going to do on the game, so it might be a worthwile learning experience for you to try them both.