I have been recently learning and using Flex 2. Coming from a ColdFusion background (and being self taught!!), I first found it very hard to get used to the strict typing and syntax that is used to make up a Flex App.
Flex Apps are composed of MXML and Actionscript 3 class files. The MXML is not a problem for me to look at and understand, but when I first looked at the Actionscript 3 files, my first impressions were "How am I going to learn this!"
On closer inspection of the Actionscript files, I actually started to see some resemblence of some learning I had previously completed on .NET and Java. The syntax to me looked very similar to the Java language and C#.NET.
I have to say though, for anyone looking to learn Actionscript 3, get some basic Java fundamentals or C# fundamentals under your belt and it well help you immensely.