If I would have to define WCF I would say that it's the generalization of every know service or communication technology between a client application and a server application.
Considering the Web services for an illustration WCF overcomes its constraints or limitation to provide a broader or more general service technology
- Web services work only over HTTP, when with WCF communication can happen over HTTP, IPC, MSMQ or TCP
- Web Services are hosted by a web server such as Apache or IIS and are stateless HTTP request - response kind of communication whereas WCF services can be hosted by a web server, a windows service or even self hosted.
In order to use a WCF service we should be able to answer the following questions about WCF basics:
- Where is the WCF service located?
- How can a client access the service?
- What operations can the client perform with that service?
These are the ABCs of WCF, that means the questions about Adress, Binding and Contract.