En el ámbito de la programación, “web service” refiere generalmente a una página web, capaz de ser llamada por otra aplicación o página web, que envía datos y recibe datos, intercambiando información con el servicio web. Podríamos estar hablando de funciones o métodos, de la misma manera que en un lenguaje de programación normal, pero con la diferencia de que este intercambio ocurre a través de internet, por eso se llama servicio web.
De esta manera un servicio web es básicamente un sistema de software diseñado para soportar la interacción e interoperabilidad máquina-a-máquina a través de la red. El consorcio W3C define los Servicios Web como sistemas software diseñados para soportar una interacción interoperable máquina a máquina sobre una red. Los Servicios Web suelen ser APIs Web que pueden ser accedidas dentro de una red (principalmente Internet) y son ejecutados en el sistema que los aloja.
El término en plural, Web Services, refiere a la manera estandarizada de integrar una aplicación basada en la web usando los estándares XML, SOAP, Wsdl y UDDIopen.
La definición de Servicios Web propuesta implica muchos tipos diferentes de sistemas, pero el caso común de uso de refiere a clientes y servidores que se comunican mediante mensajes XML que siguen el estándar SOAP.
En los últimos años se ha popularizado un estilo de arquitectura Software conocido como REST (Representational State Transfer). Este nuevo estilo ha supuesto una nueva opción de estilo de uso de los Servicios Web.