You are right about communication possibilities. I would also consider sockets at the level of
System.Net.Sockets.TcpListener/TcpClient
; and this option would come before remoting and WCF.
Where to start? I would recommend to start with
inception phase,
http://en.wikipedia.org/wiki/Unified_Process[
^]. :-)
In your case, the initial focus of inception phase should be made on technological prototypes which will give you further ideas on the general R&D plan.
If you still cannot get and idea where to start, consider hiring a software architect and/or team leader, presumably well familiar with related fields. I'm serious. Bear in mind, the work is pretty big.
[EDIT]
Please see the comment to the question by Mehdi — I'm completely agree!
—SA