Qué rollo, Nestor--
Respecto a a) hay varias formas de hacerlo. Está medio en chino explicarlo así rápido, preo es relativamente sencillo. Yo normalmente hago la edición de la información a través de un DetailsView atado al registro seleccionado en el GridView, precisamente para no pelearme con eso, pero también se puede hacer desde el GridView. De hecho en el último taller Horacio hizo un ejemplo de eso precisamente. No recuerdo ahorita todos los detalles pero jalaba... por ahí debe estar la solución de ese taller en la sección de Descargas, aunque no estoy seguro si se subió...
¿Horaciooooo? Si andas por aquí, ¿podrías agrandar atender esta duda?
Respecto a b) Hay una clase basicotota del framework que te podría servir WebRequest. Esta clase te sirve para... duh... hacer una request de web
La puedes utilizar para ejecutar la petición contra un URL y leer la respuesta, que parece que es lo que quieres hacer.
Ahora que si te quieres poner bien nice, pues yo recomendaría hacer un servicio de WCF en .NET 3.5. En el evento del lanzamiento de VS2008 que acabamos de tener, uno de los demos que hice precisamente trataba sobre servicios REST (que son como el tipo que tu mencionas, a base de GETs). Puedes hacer un servicio de WCF que consuma el servicio REST y te dé una capa más controlada dentro de tu aplicación, sobretodo para manejar posibles excepciones y cosas así--acuérdate que una de las premisas de los servicios es que no debes asumir que son confiables.
En fin, esto puede darte algunas ideas. Espero te sirvan.