Web Services - que é um padrão definido pelo W3C, para que eles possam ser acessados semi-automaticamente ou automaticamente (WSDL / UDDI). A coisa toda é baseada em XML, então qualquer um pode chamá-la. E todos os aspectos do serviço estão muito bem definidos. Há parâmetros de descrição padrão, padrão de passagem de parâmetro, padrão de resposta, padrão de descoberta, etc. etc. Você provavelmente poderia escrever o livro de 2.000 páginas que descreveria o padrão. Existem até alguns padrões "adicionais" para fazer coisas "padrão", como autenticação.
Apesar do fato de que invocação e descoberta automáticas mal funcionam, porque os clientes são bastante pobres e você não tem garantia real de que qualquer serviço possa ser chamado de qualquer cliente.
A API da Web é tipicamente feita como HTTP / REST, nada é definido, a saída pode ser por exemplo. JSON / XML, a entrada pode ser XML / JSON / ou dados simples. Não há padrões para nada = > nenhuma chamada automática e descoberta. Você pode fornecer alguma descrição no arquivo de texto ou PDF, você pode retornar os dados no Windows-1250 em vez de unicode, etc. Para descrever o padrão, seria um folheto de 2 páginas com algumas informações simples e você definiria todo o resto. / p>
A Web está mudando para API / REST da Web. Os serviços da Web não são realmente melhores que a API da Web. Muito complicado de desenvolver e eles comem muito mais recursos (largura de banda e RAM) ... e por causa de todas as conversões de dados (REQUEST- > XML- > DATA- > RESPONSE- > XML- > VALIDATION- > CONVERSION - > DATA) são muito lentos.
No WebAPI você pode compactar os dados, enviá-los compactados e descompactar + descompactar no cliente. No SOAP, você só pode compactar a solicitação de HTML.