Five namespaces within the .NET Framework are directly related to Web services development:
System::Web::Services is the primary namespace for Web services development. It consists of classes required for Web services creation.
System::Web::Services::Configuration consists of classes that configure how Web services are created using ASP.NET.
System::Web::Services::Description provides classes to programmatically interface with the WSDL.
System::Web::Services::Discovery provides classes to programmatically discover Web services on a Web server.
System::Web::Services::Protocols defines the protocols for transmitting data to and from the client and Web service over the network.
Most of the time when you develop Web services, you can be almost completely ignorant of the preceding namespaces. Normally, all you will need when implementing aWeb service is two attributes, WebServiceAttribute and WebMethodAttribute, and an optional class, WebService. You use this class as a base class from which to inherit your Web service. You can find all three in the System::Web::Services namespace.
You use the System::Web::Services::Protocols namespace as well, but only indirectly within autogenerated code created when you add a Web reference.