Je recommande l'itinéraire du service Web. Il offre une interface standard qui peut être utilisée par d'autres plateformes client à l'avenir.
Les clients .NET interagissent assez bien avec les services Web Java, bien qu'il y ait quelques pièges. Les deux meilleures technologies disponibles pour le client .NET sont Microsoft Web Service Enhancements (WSE) et Windows Communication Foundation (WCF). WSE est une technologie plus ancienne qui n'est plus mise à jour par Microsoft, mais qui fonctionne toujours très bien dans Visual Studio 2005 et les versions antérieures. Je trouve que WSE est un peu plus facile à utiliser en termes d'interface avec les services de base, mais WCF a beaucoup plus de soutien pour les protocoles WS- * (sécurité, confiance, etc.). Si vos besoins sont basiques et que vous utilisez toujours Visual Studio 2005 (.NET Framework 2 ou plus ancien), choisissez WSE. Si vous aimez le tranchant, ou si vous anticipez des besoins de sécurité plus avancés (cela ne vous semble pas vouloir), alors allez-y avec WCF. Notez que WSE ne fonctionnera pas facilement dans Visual Studio 2008 et plus récent, et que WCF ne fonctionnera pas dans Visual Studio 2005 et les versions antérieures.
En accédant à l'itinéraire du service Web, vous créerez une interface qui pourra être réutilisée et qui aboutira à un système plus faiblement couplé lorsque vous aurez terminé la plupart des autres itinéraires. L'inconvénient est principalement la performance: la sérialisation xml sera plus lente que binaire sur le réseau, et les services web ne gèrent pas de grandes quantités de données.