short addition:
Basic communication is over a serial line, check the playground -
http://www.arduino.cc/playground/Interfacing/Csharp
wrapping it into a dll is fine with me, and you could extend the article on the playground if you like to !
You can connect Arduino through ethernet to with this shield
and socket communication - Ethernet - Arduino Reference
this should kickstart your apps.