Uses of WCF
When our application is in .Net technologies and when the partner application was in another platform [J2EE]. It is running different operating system.[Different Platform]. The security requirement is also quite different. So to Interoperability with this application WCF play a key role in interoperable with the application
Unification of Microsoft’s Distributed Computing Technologies, WCF vs. other technologies
1. ASMX, also called ASP.NET Web Services, would be an option for communicating with the Java EE-based reservation application and with the partner applications.
WCF - WCF can communicate using SOAP-based Web services, interoperability with
other platforms that also support SOAP
2. .NET Remoting - Remoting is designed expressly for .NET-to-.NET communication, so it would offer the best performance for this situation.
WCF - To allow optimal performance when both parties in a communication are built on WCF, the wire encoding used in this case is an optimized binary version of SOAP.
3. Enterprise Services - managing object lifetimes and defining distributed transactions. But it supports only limited set of protocols.
WCF - Managing object lifetimes, defining distributed transactions, and other aspects of
Enterprise Services are also provided by WCF.
4. Web Services Enhancements (WSE) - might be used along with ASMX to communicate, Because it implements more advanced SOAP-based standards, known collectively as the WS-*specifications, WSE can allow better security.
WCF - it supports a large set of the WS-* specifications, WCF helps provide reliability,
security, and transactions when communicating with any platform that also supports these
5. System.Messaging, which provides a programming interface to Microsoft MessageQueuing (MSMQ) could be used to communicate with Windows-based partner applications.
WCF – It has option for queued messaging, built on MSMQ, allows applications to use
Persistent queuing without needing to use another application programming interface.
6. System.Net developers can create applications that use the HTTP-based communication style known as Representational State Transfer (REST).
WCF - It has built-in support for creating RESTful clients and services.