Hi Elico,
Well, first thing to keep in mind is that Lazarus is more like Delphi 7, just more expanded and suitable for multiple platforms.
Next thing to keep in mind is that support for Linux, Windows and MacOS X is great. Check out the Lazarus Forum, you'll find some very helpful folks there.
Development for other platforms can be challenging, to get the configuration right, but it is possible.
Downloads are free of course, and you'll find those here.
The way I work with Lazarus:
I run development on a Mac (but you can choose Linux or Windows as well of course).
To compile and test on the other platforms (Linux and Windows in my case), I use virtual machines (I use VMWare Fusion, but the other alternatives like Parallels etc work just fine as well).
It is technically possible to run MacOS in a virtual machine, but I have to admit that I never got that to run really smooth.
Like I said: I develop my apps on a Mac, just pick one "native" environment you prefer.
Once I'm done with the programming part, I bring the code over to one of the virtual machines on which I have Lazarus installed as well, and simply recompile the code.
Normally; that's about it ...
Now some other difference compared to Delphi, that I had to get used to:
- When you install a new component, the entire IDE will be recompiled (pretty quick)
- Lazarus ALWAYS has a project open, if no project is available it will open it's default empty project with an empty form
- You have to learn to drop the use of system specific calls, like for example the Windows API (you can still use it though, if you only develop for Windows), there are quite often cross platform alternatives available
- Lazarus is in constant development, so update when a new release becomes available is recommended
- Unlike the newer Delphi variants: Lazarus uses native controls (no FireMonkey!)
Just to name a few. I found the transition from Delphi to Lazarus pretty easy once I got used to those differences.
I'm not sure what you're looking for so feel free to ask ...