What is WCF binding and Different Types of binding available.

What is WCF binding?
The binding in the config file tells you the bellow information
1. Binding element describing the transport protocol
2. Binding element that handles message encoding.

A binding should have one binding element, which should have the above 2 information.

BasicHttpBinding
This binding obeys the WS-I Basic Profile 1.1. This communicates using ASMX based web services.
WSHttpBinding
This binding follows the WS-* specifications. It supports distributed transactions, and secure, reliable sessions. This communicates using both HTTP and HTTPS transport Protocol. Messages are transmitted in the form of XML text or Message Transmission Optimization Mechanism (MTOM).
WSDualHttpBinding
Represents a binding that a WCF service can use to configure and expose endpoints that are able to communicate with ASMX-based Web services and clients and other services that conform to the WS-I Basic Profile 1.1
WSFederationBinding
This binding supports the WS-Federation specification. WS-Federation defines several models for providing federated security, based on the WS-Trust, WS-Security, and WS-Secure Conversation specifications.
NetTcpBinding
The name itself is saying that it uses the TCP protocol for communication. It uses binary encoding wile transfering messages. It offers higher performance than the bindings based on the HTTP protocols but less interoperability. It supports transactions, reliable sessions, and secure communications.
NetPeerTcpBinding
This binding supports peer-to-peer communications between applications using the TCP protocol. This binding supports secure communications and reliable, ordered delivery of messages. Messages are transmitted by using a binary encoding.
NetNamedPipeBinding
This binding is very helpful for processes running on a same computer. It gives high performance by using named pipes. This binding supports secure, reliable sessions and transactions. You cannot use this binding to connect to a service across a network.
NetMsmqBinding
The client and service can communicate using Microsoft Message Queue (MSMQ).Messages are stored in a message queue, so the client and the service do not both have to be running at the same time. This binding supports secure, reliable sessions and transactions. Messages use a binary encoding.
MsmqIntegrationBinding
You can build an WCF application, that sends or receives messages from an MSMQ message queue. It is intended for use with existing applications that use MSMQ message queues.