Indeed, this is a very open question. It depends entirely on your requirements, and then you can choose the right binding that provides security.
For example, you need to switch to basicHttpBinding or wsHttpBinding if interoperability is your problem and you need to communicate with systems other than WCF. In some cases, your service may be on the same system. In this case, netNamedPipeBinding would be the most efficient option. netTcpBinding or netPeerTcpBinding may be the best options if you need to exchange data on multiple computers. And if the service needs support for disconnected or queued calls, netMsmqBinding or msmqIntegrationBinding will become candidates.
WCF Security FAQs http://www.codeproject.com/Articles/36732/WCF-FAQ-Part-3-10-security-related-FAQ
default binding http://www.topwcftutorials.net/2012/06/wcf-bindings-default-security.html
source share