Buenas compañero,
Yo te puedo responder algunas preguntas, otras no tengo ni idea...
1º) Si sabes VB.Net y tu WS no tiene que hacer nada especial... Usa VB.Net.
2º) Tu WS tendrá un método que reciba un parámetro de tipo
xmlDocument, y ya vas trabajando como siempre has hecho con un documento XML, así es como lo tienen hecho los WS que consumimos en mi trabajo...
3º) No lo he hecho nunca, pero imagino, que tendrás que publicarlo, y subirlo a un directorio que no sea el raíz de tu web... Por ejemplo: www.miWeb.com/MiServicioWeb/<AQUÍ>
Si quieres recibir ese archivo de una aplicación ajena a ti, tendrás que solicitar al autor de dicha aplicación que realice una llamada a tu WS.
Espero haberte ayudado en algo... Un saludo compañero!!!