What is the difference between a "normal" Java desktop application (with AWT or Swing), and a Java application built with JavaFX?
What are the advantages and disadvantages of each?
I think what you are asking is what are the pros and cons of building a JavaFX desktop application vs a Java Swing desktop application. After experimenting with both I can point out a few differences:
Java Swing
Pros:
Cons
JavaFX
Pros
Cons