You are dealing with Modbus TCP/IP or Modbus over
TCP (a.k.a. RTU/IP), which is not the same. This is the first thing you need to find in your documentation, If you know one you can learn another one based on Modbus RTU vs Modbus ASCII.
Start from here: http://en.wikipedia.org/wiki/Modbus
This is a detailed description of Modbus TCP: and robust, it has since become one of the de facto standard communications protocols in the industry, and it is now amongst.
Your operation using C# is fairy simple: you connect to Modbus server using
and perform the communication using Modbus protocol. Essentially, you sequentially write/read to/from a network stream available from your instance of
after connection: send request — get response. See http://msdn.microsoft.com/en-us/library/system.net.sockets.tcpclient.aspx
]. Do it in a separate thread.
This is a C# implementation of Modbus protocol you can use. All this requires pretty good experience with basic programming techniques and some with network programming and threading, which is fairly simple.