BuenAS:
Sí, la verdad que doy gracias de haber llegado a Flash hace algún tiempo, cuando sólo existía Flash; ahora la plataforma Flash es un poco liosa. A ver si no me lío yo:
Por un lado tienes dos IDE's, o sea, dos entornos de desarrollo:
1. Flash Professional. El Flash de toda la vida, más pensado para diseñadores que para programadores; aunque ahora con Flash CS5 han mejorado bastante el editor de código (a partir de ahora me refiero a él como Flash).
2. Flex Builder, llamado Flash Builder a partir de la versión 4 (a partir de ahora me refiero a él como FB).
3. Flash Catalyst. Es un híbrido entre Flash Professional y Flex/Flash Builder. Básicamente permite hacer de forma visual (arrastrando y soltando cosas, abriendo asistentes, utilizando una línea de tiempo, etc) lo que en FB hay que hacer escribiendo código (a partir de ahora me refiero a él como FC).
Tienes dos lenguajes:
1. ActionScript 1, 2, y 3. que es un lenguaje de programación, próximo a javascript en su origen pero que se ha separado bastante de él con ActionScript 3.
2. El lenguaje de marcas mxml, con el que se trabaja en el framework Flex.
Y tienes... infinitas formas de publicar:
-Cuando compilas un swf lo puedes hacer para cualquier versión de las que han ido apareciendo y tendrá sólo la funcionalidad que en aquel momento había. Por ejemplo, ahora Flash Player va por la versión 10.1, soporta vídeo H.264 HD y ActionScript 3; pero puedes publicar sin mayor problema para Flash Player 4 y volver a 1998 con ActionScript 1

-Puedes publicar aplicaciones de escritorio (el típico programa .exe de Windows). Trabajas de igual modo que lo haría para generar un swf, pero ahora, al publicar lo hacer para el perfil AIR, y generas una aplicación .air que se instala en el ordenador del usuario (a partir de AIR 2.0 también se puede generar directamente un instalador .exe)
-Una aplicación AIR la puedes desarrollar tanto desde Flash como desde FB.
Por otro lado tienes el framework Flex, que lo he dejado para el final porque creo que es lo que te interesa. Para desarrollar una aplicación con Flex no puedes utilizar Flash; sino que debes utilizar FB (Hay otras herramientas de terceros, como FDT, FlashDevelop... que son alternativas a FB). Por tratarse de un framework, básicamente facilita la vida del programador a la hora de desarrollar una aplicación:
- Hasta Flex 3, estaba así, así, decir que seguía un patrón MVC; pero con Flex 4 claramente se trata de un framework MVC, que te permite separar completamente la vista, el modelo y el controlador de tu aplicación.
- Tienes resuelta la GUI (la interfaz gráfica de usuario) con los componentes que habitualmente se utilizan: botones, barras de menús, árboles, tablas, ventanas...
- Tienes herramientas y asistentes para conectar tu aplicación a una base de datos, a un servicio web...
- Y después infinidad de utilidades, como validadores de formularios, procesamiento de xml's, etc.
Echa un vistazo a
Tour de FlexUn saludo, y vaya rollo que he soltado.