In my previous Indigo post , I made use of a simple IOutputChannel for sending a message and IInputChannel for receiving one. Naturally, there are other message exchange patterns (MEPs) and there's modelling for these in other channel interfaces which looks to include IInputChannel, IOutputChannel, ISessionChannel, IRequestChannel, IReplyChannel, IProxyChannel, IDuplexChannel, IHttpRequestChannel, IHttpResponseChannel and probably some more. I thought I'd have a go at taking my previous post's code and using IRequestChannel and IReplyChannel to get a message back to the original "client". Here's some code for it; using System; using System.Xml; using System.IO; using System.ServiceModel; using System.ServiceModel.Channels; namespace ConsoleApplication3 { class Program { static void Main(string[] args) { HttpChannelFactory factory = new HttpChannelFactory(); factory.Open(); IRequestChannel channel = factory.CreateChannel<IRequestChannel>( "http://localhost:5050/simpleService"); channel...