Getting Started Tutorial

The topics contained in this section are intended to give you quick exposure to the Windows Communication Foundation (WCF) programming experience. They are designed to be completed in the order of the list at the bottom of this topic. Working through this tutorial gives you an introductory understanding of the steps required to create WCF service and client applications. A service is a construct that exposes one or more endpoints, each of which exposes one or more service operations. The endpoint of a service specifies an address where the service can be found, a binding that contains the information that a client must communicate with the service, and a contract that defines the functionality provided by the service to its clients.

After you work through the sequence of topics in this tutorial, you will have a running service, and a client that can invoke the operations of the service. The first three topics describe how to define a service with a contract, how to implement the service, and how to configure the service in code, host, and run the service. The service that is created is self-hosted and the client and service run on the same machine. The service is configured using code rather than configuration. Services can also be hosted under Internet Information Services (IIS). For more information about how to do this, see How To: How to: Host a WCF Service in IIS. Services can also be configured within a configuration file. For more information about using a configuration file see Configuring Services Using Configuration Files.

The next three topics describe how to create a client proxy, configure the client application, and create and use a client that can access the functionality of the service. Services publish metadata that can be accessed that define the constructs a client application needs to communicate with the service operations. WCF provides a ServiceModel Metadata Utility Tool (Svcutil.exe) to automate the process of accessing this published metadata and using it to construct and configure the client application for the service.

All of the topics in this section assume you are using Visual Studio 2010 as the development environment. If you are using another development environment, ignore the Visual Studio specific instructions.


If you are running Windows Vista, you must start Visual Studio by going to the Start menu and right clicking Visual Studio 2010 and selecting Run as Administrator. To always launch Visual Studio 2010 as an administrator you can create a short cut, right click the short cut, select properties, select the Compatibility tab, and check the Run this program as an administrator checkbox. When you start Visual Studio 2010 with this shortcut, it will always run as administrator.

For sample applications that can be downloaded to your hard disk and run, see the topics in Windows Communication Foundation Samples. For this topic, see, in particular, the Getting Started Sample.

For more in-depth information about creating services and clients, see Basic WCF Programming.

In This Section

  • How to: Host and Run a Basic Windows Communication Foundation Service
    Describes how to configure an endpoint for the service in code, how to host it inside of a console application, and start the service. To become active, a service must be configured and hosted within a run-time environment. This environment creates the service and controls its context and lifetime.




Windows Communication Foundation Samples

Basic Programming Lifecycle

See Also


Guide to the Documentation
What Is Windows Communication Foundation

Other Resources

Conceptual Overview
WCF Feature Details

Build Date: 2011-06-25