This is mostly a controversial topic , RIA is a term coined by Macromedia (now owned by Adobe) and is loosely defined as web-applications which have functionality and responsiveness of a desktop application , I am quoting from google and I generally agree with this definition but there are lots of other definition and perceptions , here is a post about that http://weblog.mrinalwadhwa.com/2008/10/24/what-is-an-ria/
I don't know about details- but for me JavaFX is clearly a preffered tool, considering
it seamlessly can talk with Java code(better then Flex),
run fairly well on Linux, I had not experienced any problem yet(better then Silverlight),
is present right here right now(better then HTML5 which will arrive after 5 years in it's full force and if you consider it a RIA competitor) and runs on Desktop, Mobile, Browser, and soon on TV, so you can learn this to code for majority of platforms.
and for me the most important feature is -- Netbeans IDE (or Eclipse ) is Available for Linux and Windows - I recently switched from Vista to Linux after availability of JavaFX on linux and found myself right at home with netbeans , it have same features available here, on the other hand , for flex development I have to install VirtualBox with guest Windows XP (which is fine in my case as have very good configuration but totally unacceptable for a linux developer ) because sure we can use Flex SDK but it is not as powerful as full IDE might be after you have certain level of acceptance of platform.
some points might appear specialized but I am also just a beginner and this is what I experience.