I haven't tried but I believe you can create GUI applications using FPC only without Lazarus. But that won't be easy I think.
Download Lazarus and try it maybe you will like it too. You can build portable programs (which means can run without installation) using Lazarus and if you choose the components to use carefully, your program can be distributed and run without external dll or so files.
For example I ever built a simple stock control program. It uses TDBF. The result program contains only 1 single exe file. It can be distributed and run without install. When the programs starts, it will check the existence of the config and dbf files. If it can't find them then it will automatically generate them using the default values. The user asked me, how to do backup and restore. That's easy, simply copy/paste the folder to a usb flash drive or other computer. The restoration is easy too, just copy them back.
But if you choose to use certain components for example MySQL, Allegro, etc, then your program will need third party libraries and/or you have to configure them first before user can run the program.
Lazarus is awesome. The performance is good, you can build nice looking GUI applications, it has wide selection of components. If you develop carefully, you can build portable programs and the result binary is relatively small. For the stock control I built, the size of the exe + all dbf + config files is less than 10 MB.
If you're interested to learn Lazarus, here has a lot of short demos:
https://wiki.freepascal.org/Portal:HowTo_Demos