You will see what I learned in chapter 24 from “Beginning Visual C# 2012 Programming”.
A Web Service is like a website that is used by computer instead of a person.
|WCF Fundamentals||WCF provides a framework for creating and communicating with remote services. It combines elements of the web service and remoting architectures along with new technologies to achieve this.|
|Communication Protocols||You can communicate with a WCF service by any one of several protocols, including HTTP and TCP. This means that you can use services that are local to your client application, or that are separated by a machine or network boundaries.|
|Communication payload||Typically, calls to response from WCF services are encoded as SOAP messages. However, there are alternatives, such as plain HTTP messages, and you can define your own payload types from scratch if you need to.|
|Hosting||WCF services might be hosted in IIS or in a Windows service, or they can be self-hosted. Using a host such as IIS enabled you to make use of the host’s built-in capabilities, including security and application pooling. Self-hosting is more flexible, but it can require more configuration and coding.|
|Contracts||You define the interface between a WCF service and client code through contracts. Services themselves, along with any operations they expose, are defined with service and operation contracts. Data types are defined with data contracts. Further customization of communications is achieved with messages and fault contracts.|
|Client applications||Client applications communicate with WCF services by means of a proxy class. Proxy classes implement the service contract interface for the service, and any calls to operation methods of this interface are redirected to the service. You can generate a proxy by using the Add Service Reference tool, or you can create one programmatically through channel factory methods. In order for communications to succeed, the client must be configured to match the service configuration.|
Source: Beginning Visual C# 2012 Programming, Watson, K. et al.,pp.757