If you simply look into the text itself explaining the types and difference in the bindings, WsHttpBinding’ supports the ‘WS-*’ specification. WS-* specifications standards to extend web service capabilities.
Please find below for more details about difference between basichttpbinding and wshttpbinding.
|1||Data Exchange||Primarily BasicHttpBinding is designed to exchange SOAP over HTTP(s) only, just like old ASMX or .net web services and supports the WS-I BasicProfile|| |
WsHttpBinding supports the advanced WS-* specification which includes WS-Addressing and WS-Security etc.
|2||SOAP Version|| |
BasicHttpBinding is based on SOAP 1.1 specification.
WsHttpBinding supports SOAP 1.2 specification.
It has fewer security options. Or we can say, there is no security provided, by default, for BasicHttpBinding.
|Because WsHttpBinding supports advanced WS-* specification, it has a lot more security options available. For example, It provides message-level security i.e. message is not sent in plain text. Also it supports for WS-Trust and WS-Secure conversation|
|4||Security options|| |
· Windows – default authentication
· Transport with message credentials
No support for reliable Messaging.
Supports for reliable messaging.
It has higher level of interoperability with existing services and clients.
Due to more advanced messaging scenarios, it has reduced support for wider range of older clients.
|7.||Performance||BasicHttpBinding is a bit faster because security is disabled by default||As it supports advanced security options and its enabled by default, so it’s a bit slower than BasicHttpBinding|
No support for transactions.
It supports atomic and distributed transactions.