basicHttp is SOAP 1.1, wsHttp is SOAP 1.2 (they're quite different, esp. when it comes to SOAP faults)
basic is - very basic. It's compatible with old-style ASMX ASP.NET webservices and just about any other web service stack out there
basic is very limited in its security settings
wsHttp is an implementation of a gazillion WS-* standards, and offers much more features: security, reliable messaging, transaction support, duplex communications and a whole host more.
wsHttp is the much "heavier" and more extensive protocol, less compatible, less nimble