Linux for servers are a great idea. Like why bother paying ubar amount of dollars for SBS Server Enterprise when you can download a Linux core for free. Provided that you have IT Staff that know what they are doing, you can not go wrong.
As for desktop applications. Not sure about that. It would mean that you would need to train your staff for that. As where Windows is pretty much universal and is easily trained every where. Some of us tech head here might not have a problem with at least giving linux ago. However end users have a lot of difficulty in moving from Windows 98 to Windows 2000. Where you might be saving money on cost of software, you will be spending money on training.