well is Linux or FreeBSD better in any way?
Both Linux and FreeBSD, especially Linux, support a wider variety of hardware. If you're wanting to use a scanner or printer in a Unix environment, you're probably better off with either Linux or FreeBSD than Solaris.
Also Solaris uses "CDE" instead of the popular KDE or GNOME, (I've heard people say that SUN is trying to KILL Linux??). In either way, I'm sure that KDE or GNOME can be added onto Solaris (pretty much) the same way it can be added to any other flavor of Unix/Linux.
Gnome is included in Solaris 10. The latest beta releases have added considerably better support for it.
And Sun is not trying to 'kill' Linux. There are quite a few OSS people who seemed really pissed off that Sun hasn't open sourced either Java or Solaris to the extent that they would like. OpenOffice and NetBeans are two OSS projects that Sun sponsers and both run just fine on Linux.
So....The big question: They all run on basically the same kernel, (filesystem is organized in the same way, file managing, etc) the GUIs are probably interchangeable, so what's really the big difference among distributions?
To be clear, Solaris - the Sun Operating Environment - does not use the Linux kernel. JDS, the Java Desktop System, does run a Linux kernel. SunOS precedes Solaris and is sometimes used as a term to describe the Solaris kernel.
Is it the some versions come with different utilities than others, files are in different directories, and basically stuff like that? Or is it something more?
The differences between Solaris and Linux are pretty big in some areas - filesystem, scheduler, threads/processes, networking, security, root jails, etc. However, Linux is based on the 'Unix philosphy' so there is a lot of overlap between these two operating systems.
The differences between Linux distros is a big depends. For example, Suse and RH and pretty similiar while RTLinux and RH are very different. Among desktop distros, the main differences tend to be file placement and package management. Thankfully, the Linux standards have done away with a lot of the differences in file placement.