I am a new user of Mathematica, starting from 10.0 version. I created simple GUI application using GUIKit. It is just Mathematica notebook (*.nb file), which I can execute and use the app. Right now I am thinking about, what different options Mathematica gives me in order to share this application with others (for example users without Mathematica licence)?
Any other recommendations?
Any Mathematica application needs the Mathematica engine for it to run. If one creates a CDF then one needs the CDF Player (which is a version of Mathematica). One could run it on the Wolfram Cloud, which is running Mathematica in a client-server configuration (or webMathematica which also is another client-server method).
To create user interfaces it is far better generally to use Mathematica's native dynamic user interface constructs than to use GUIKit. The easiest way to do this is to make use of the Manipulate function. But one can build things from the ground up to ones own specifications using Dynamic, DynamicModule and the various user interface constructs.
One place to start is here: