Qué tal Jim. La respuesta a tu duda tiene más de una solución el día de hoy. Como bien te haz dado cuenta actualmente tenemos una serie de nuevas tecnologías que están permitiendo hacer interfaces gráficas cada vez más amigables y productivas, ya sea en ambiente Windows o Web. Sin embargo, para resolver tu duda, yo te recomendaría que respondas una simple pregunta:
¿Los usuarios de tu aplicación están dentro de la red de tu empresa? Es decir, ¿Tienes control sobre la plataforma que utilizan todos tus usuarios?
Si tu respuesta es afirmativa, no hay más vuelta que darle. Tu opción debe ser utilizar Windows Forms, preferiblemente al estilo Clientes Inteligentes. Si tu respuesta es negativa, pues la respuesta es muy clara y obvia también: debes utilizar ASP.NET. ¿Por qué elegir Clientes Inteligentes? Simple, los clientes inteligentes te brindan las siguientes ventajas:
- Experiencia de usuario enriquecida
- Desarrollo (programación) altamente ágil y productivo
- Respuesta instantánea de la UI (sin viajes al servidor para cada click)
- Las actualizaciones son automáticas para los clientes
- Funcionan de manera conectada o desconectada
- Se pueden adaptar a cualquier dispositivo
En un sistema bancario altamente transaccional, tu premisas fundamentales deben ser siempre las mismas: Seguridad y Velocidad. Ambas cosas se consiguen fácilmente con los clientes inteligentes, pues la seguridad la manejas en tu backend que estará expuesto por servicios web, a los cuales les aplicarás todas las seguridades del caso, preferiblemente utilizando Web Services Enhancements. Y la velocidad, pues, la máxima que puedas obtener con tu aplicación Windows, la cual usualmente es muy superior a una aplicación Web. La puesta en producción y las actualizaciones también son ya transparentes gracias a esquemas como ClickOnce que se encargan de todo, la mismo estilo que las aplicaciones Web.
Ahora bien, estos temas de AJAX y ATLAS definitivamente vienen para llevar a las aplicaciones ASP.NET a un sitial mucho más cercano a la experiencia de usuario Windows. Deberías revisar bien esas tecnologías, pues también podrían ser una buena opción. Sin embargo, son tecnologías nacientes, así que debes evaluar si tomas el riesgo de empezarlas a utilizar desde ahora.
Definitivamente te costará mucho convencer tanto a tus compañeros, como a tu jefe y al cliente de que usar un esquema de Clientes Inteligentes es lo ideal para las aplicaciones bancarias. A mi me pasó igual. Sin embargo, lo que te recomiendo ahí es que les hagas una demostración de las capacidades de los clientes inteligentes y del por qué deben ser elegidos en lugar de una aplicación web. Trabaja siempre con resultados medibles y demostrables. Aunque conceptualmente los clientes inteligentes tienen varias ventajas, ningún usuario te creerá a menos que le demuestres comparativamente por qué este es mejor que el otro esquema. En internet hay cientos de recursos y demos que hablan de clientes inteligentes (busca smart clients) y que demuestran su utilidad.
¡Suerte!