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.
Technical implementation of a program which
is intended to run in the background continuously. Example: SQL Server Service and all other services that you would see under Services.msc console on windows xp or vista.
When should I go to create Window service ?
You would use this when you want to create windows service. The sevice which has to run in the background without UI. Has basically got nothing to do with WCF. It can be a genenral ftp service or http service, MSMQ service.
Goto Start-> Run and type Services.msc. You will see services that the OS and other software installs and runs there.
When should I go to create a new WCF service application?
Like you can host your WCF services in windows service, where the services are constantly listening at some port. You can on the same lines host the services in IIS. For this you actually use this Option. Open this template and give it a run- F5. You will see the service by default will use ASP.net development server (see your windows tray) and host this service for you.
In what scenarios must WCF be used:
1) A secure service to process business transactions.
2) A service that supplies current data to others, such as a traffic report or other monitoring service.
3) A chat service that allows two people to communicate or exchange data in real time.
4) A dashboard application that polls one or more services for data and presents it in a logical presentation.
5) Exposing a workflow implemented using Windows Workflow Foundation as a WCF service.
6) A Silverlight application to poll a service for the latest data feeds.
For more information please go through following links:
What's the Difference between WCF and Web Services?
Difference Between WCF and Windows Service