La flexibilidad del modelo cliente-servidor consiste en que una aplicación se divide en dos partes: la parte del cliente que interacciona con el usuario y la parte del servidor que coordina el flujo de actividades de los clientes.
Para efectos de desarrollo el cliente o los clientes pueden ejecutarse en la misma computadora o en diferentes computadoras dentro de la misma red LAN.
Las aplicaciones cliente-servidor se basan en protocolos y estos a su vez se registran en los documentos RFC (Request for Comment). Cualquiera puede escribir un RFC y enviarlo, si es necesario este RFC puede ser implementado de manera masiva, aunque por lo general muchos protocolos se definen pero pocos acaban implementándose, este diseño abierto de las especificaciones de un protocolo permite la independencia a las aplicaciones con respecto al método que se usara para la comunicación y de esta forma se asegura que un variedad de clientes de diferentes fabricantes de software accedan a un servicio estándar, abierto y con especificaciones comunes, sin necesidad de implementar protocolos propietarios.
Un ejemplo práctico de esto es el servicio de correo electrónico donde un cliente email en Mac, un cliente email en Windows o un cliente email en UNIX pueden conectarse al mismo servicio e intercambiar mensajes entre sí, todo esto sin necesidad de hacer cambios al servicio.
La capacidad de las aplicaciones Web proviene de los datos que transportan los protocolos, no de los protocolos en sí. La seguridad no era una preocupación cuando comenzó Internet como una red que conectaba institutos de investigación, sin embargo cuando Internet se usa para aplicaciones de negocios la seguridad se vuelve la preocupación principal por lo que además de los protocolos estándar se desarrollaron los protocolos seguros, como ejemplo: sftp, https, ssh entre otros.
Cuando se construyo ARPAnet el antecesor de Internet, los primeros servicios que se necesitaban fueron la transferencia de archivos y la emulación de terminal además de los servicios de utilidades. Así que los protocolos como chargen, echo y daytime fueron desarrollados.