Как Flash, так и Flex используют язык ActionScript - Flash CS3 и Flex 2 поддерживают ActionScript 3 (который совместим с ECMAScript Edition 4), тогда как более старая версия Flash поддерживает только ActionScript 2.
Различия между ними следующие:
1) Flash был разработан для облегчения создания интерактивного контента, тогда как Flex ориентирован на разработку приложений.
2) Flash сохраняет структуру приложения в двоичном FLA-файле, тогда как Flex использует текстовый файл на основе языка разметки Flex, MXML.
3) Различные модели развертывания.
Изначально Flex был разработан для привлечения корпоративных программистов на платформу Flash. В результате во Flex появились инструменты, разработанные для удовлетворения особых потребностей программистов.
Взгляните на этот пост в блоге , который довольно хорошо иллюстрирует сильные и слабые стороны Flash и Felx.