Yes the thread is old, but still relevant! Thank you to tearoscarlet for posting the source for TCP read and write. Modbus Server is dead simple, it's the client that's a really awkward implementation. Appears to be legacy from the 90-30/70 days where direct control of the channels may have been desirable, but really that's so low-level that it's just a PITA. Unity Pro I/O Scanning is so much more intuitive.
But if you need to pull data from a Modbus TCP device like a meter, use tearoscarlet's source code and play with it until it works, it's not that hard. Get the right SYSID knowing your card or CPU position.
If you have multiple meters I suggest using multiple channels: open, read, close, repeat.