Bidirectional (Server <--> Client) + Stateful + .NET 2.0 Client App
Whichever binding you use, you can achieve this by enabling the session for your WCF service.
Only when you use wsDualHttpBinding WCF supports Duplex Message Exchange Pattern. For this to work
- Your client must use .NET 3.0 and above
- You must enable Session so it's stateful as well
- When you use basicHttpBinding, your client can be in .NET 2.0.
- When you use webHttpBinding, your client can be in .NET 2.0 and call the WCF services using HttpWebRequest.
.NET Remoting supports all the above requirements.
If you disagree with my conclusion, I would be happy to hear your thoughts about this.