This answer belongs to: Aleksandar Toplek - See notes above.
• Anonymous pipes.
Anonymous pipes provide interprocess communication on a local computer. Anonymous pipes require less overhead than named pipes but offer limited services. Anonymous pipes are one-way and cannot be used over a network. They support only a single server instance. Anonymous pipes are useful for communication between threads, or between parent and child processes where the pipe handles can be easily passed to the child process when it is created.
• Named pipes.
Named pipes provide interprocess communication between a pipe server and one or more pipe clients. Named pipes can be one-way or duplex. They support message-based communication and allow multiple clients to connect simultaneously to the server process using the same pipe name. Named pipes also support impersonation, which enables connecting processes to use their own permissions on remote servers.
Pipe Operations in the .NET Framework
http://msdn.microsoft.com/en-us/library/bb762927(v=vs.110).aspx
How to: Use Anonymous Pipes for Local Interprocess Communication
http://msdn.microsoft.com/en-us/library/bb546102.aspx
AnonymousPipeServerStream Class
http://msdn.microsoft.com/en-us/library/system.io.pipes.anonymouspipeserverstream(v=vs.110).aspx
AnonymousPipeClientStream Class
http://msdn.microsoft.com/en-us/library/system.io.pipes.anonymouspipeclientstream(v=vs.110).aspx
An EXCELLENT Example here: C# Async Named Pipes