I will show in what scenario you should use which binding.
What Is Binding In WCF
Binding describes how a client is going to communicate to WCF service. Binding is used as per client need. It supports different types of protocol to communicate with client and different types of encoding to transfer the data over the internet. So, basically binding is nothing but it is a way of communication between client and service as per client need.
There are different types of bindings available in WCF.
BasicHttpBinding
It is useful when you are using ASP.NET Web service based service. It uses WS-basic web services component and uses HTTP as transport protocol and encoding as text or xml. Https is also used with this binding.
WSHttpBinding
It is more secure, reliable and interoperable as compared to basic http binding. It supports WS-* functionality and distributed transactions with reliable and secure sessions using SOAP security. WSHttpBinding uses both HTTP and HTTPS transport for communication.
WSDualHttpBinding
It is same as WSHttpBinding rather than it supports duplex service. Duplex is a message pattern that is used by client and service to exchange their message via callback. In this binding reliable sessions are enabled by default.
WSFederationHttpBinding
Sometimes we need to add federated security service which helps us to implement federation which has the ability to share identities with multiple domains for authentication and authorization. It uses WS-federation protocol.
NetTcpBinding
It supports TCP as protocol and binary encoding by default. It provides cross machine communication and supports WS-ReliableMessaging by default. It provides more secure transfer and reliable communication.
NetNamedPipeBinding
It uses NamedPipe protocol to communicate with client with full support of SOAP security and transaction. It also uses WS-ReliableMessaging for secure transfer of data over the network and delivering the data in binary encoding.
NetMsmqBinding
It is used for queue communication. It means that this binding gives us secure and reliable queued communication for the cross machine environment. Uses MSMQ as transport protocol and provides reliable, robust and distributed application.
NetPeerTcpBinding
This binding uses secure communication between peer to peer environment when you need. It uses TCP as a protocol for communication. SOAP security and transaction are fully supported by this.
Thanks for reading the article. Hope you enjoyed this article.

Dennis ThomasPosted Jan 22, 2018, 2:11 AM
Good one Mukesh! Thanks for sharing!
Sarthak AdgaonkarPosted Jan 20, 2018, 2:19 PM
Boss your table display wrong information. where did u copied it from.: in above table WsDualhttpBinding supports HTTP protocol which is wrong I guess becoz WsDualhttpBinding will be used in callback service operation which needed a state to be maintained with client and service. Http protocol is stateless protocol which cannot be used in callback. So here WsDualhttpBinding will support only TCP protocol.
Hamid KhanPosted Sep 23, 2017, 1:58 AM
Nice explanation...................................
Niranjan pandeyPosted Jan 21, 2016, 2:56 AM
Nice
Santhakumar MunuswamyPosted Oct 18, 2015, 4:02 AM
Good one
Muhammad Aqib ShehzadPosted Oct 12, 2015, 7:12 AM
good one
Mukesh KumarPosted Oct 12, 2015, 12:59 AM
Thanks Humayun Sir
Humayun Kabir MamunPosted Oct 12, 2015, 12:49 AM
Nice...
Mukesh KumarPosted Oct 12, 2015, 12:11 AM
Thanks Harshad
Harshad PansuriyaPosted Oct 12, 2015, 12:04 AM
Nice Share
Mukesh KumarPosted Oct 11, 2015, 9:42 AM
Thanks Sir
Rajeesh MenothPosted Oct 11, 2015, 9:13 AM
Nice Share!
Mukesh KumarPosted Oct 10, 2015, 2:55 PM
Thanks Lalit
Lalit RaghavPosted Oct 10, 2015, 2:18 PM
nice article
Mukesh KumarPosted Oct 10, 2015, 11:48 AM
Thanks Nilesh Sir
Nilesh JadavPosted Oct 10, 2015, 11:48 AM
Nice one sir
Sujeet SumanPosted Oct 10, 2015, 10:42 AM
Nice explanation..................