There have one thing I want in FreeBSD:
Transaction-like configuration for the very important things that make FreeBSD run as a Server. Say, I've sent the Server to a remote date center. If I want to change the configuration of the firewall, there has a chance that I'll make a mistake and I can't connect to manage the server anymore, thus make the server 'off-manage' or even 'off-service', and the only I can do is go to the date center and login from the console. If there have a SETUP->COMMIT-or-TIMEOUT_ROLLBACK, this will not happen. Maybe at can do that, but human always make mistake, maybe some one will forget or make a incorrect at.
For desktop I have to say it not easy the set it up. Now I'm using a computer run FreeBSD+GNOME2.0, but compare to Fedora, it need more effort. And this computer is only for test, weather I should use FreeBSD or Fedora as my desktop is still not decided yet, because for FreeBSD there have many things I can't do, but with Fedora I don't like many feathers it has. If FreeBSD want to compare with Linux as a desktop, I think it should make the configuration centralized and consistent. One thing I don't like Fedora is that it have different ways to set up one thing, but not consistent, say the ifcfg-xxx script, system-config-network and NetworkManager, the former two is almost the same but in system-config-network I can chose not to save in the ifcfg-xxx files, and NetworkManager is very different thing.
And of course, configuration should keep consistent in different release. Usually the end users don't need too much different new thing. For example I used Windows NT 4.0 until 2001, the only reason I change to Win2000 is because NT can't support I new hard disk, and ship to XP in late 2005 only because the driver of 2000 can't support my new computer's combo and I can't figure out a seperate driver for it, then I installed XP for test, very thing going fine.