Windows Communication Foundation (WCF) is a framework for building service-oriented applications. Using WCF, you can send data as asynchronous messages from one service endpoint to another. A service endpoint can be part of a continuously available service hosted by IIS, or it can be a service hosted in an application. An endpoint can be a client of a service that requests data from a service endpoint. The messages can be as simple as a single character or word sent as XML, or as complex as a stream of binary data.
A few sample scenarios include:
- A secure service to process business transactions.
- A service that supplies current data to others, such as a traffic report or
other monitoring service.
- A chat service that allows two people to communicate or exchange
data in real time.
- A dashboard application that polls one or more services for data and
presents it in a logical presentation.
- Exposing a workflow implemented using Windows Workflow
Foundation as a WCF service.
- A Silverlight application to poll a service for the latest data feeds.
While creating such applications was possible prior to the existence of WCF, WCF makes the development of endpoints easier than ever. In summary, WCF is designed to offer a manageable approach to creating Web services and Web service clients.
- It combines functionalities of Asp.Net Web services, remoting, MSMQ and Enterprise Services.
- It’s more reliable and secured then Web services.
- All the major changes can be done in the configuration file instead of code file.