Linux has its benefits and limitations. The last 4 servers I had running on various Linux platforms (2 by major server hosting companies with regular security updates) were all hit and paralyzed by hacker/cracker programs...so there's nothing magical about Linux that is gonna protect anyone if it is targeted.
Of course not. Linux has vulnerabilities just like any piece of software. Simply by the virtue of its complexity, it cannot be invincible. Furthermore, when you talk about running servers, you are deliberately exposing multiple ports and applications. Which is why good sys-admins get paid so much money to secure the servers.
However, when we talk about a desktop, which isn't inherently vulnerable by being a server, securing it against AUTOMATED, NON-SPECIFIC attacks becomes the most important factor. I am not saying that a professional hacker can't crack a default Linux install. Actually, I bet it would take him a few minutes. But all you need is to avoid getting infected by running downloaded programs (which doesn't happen in Linux if you get your software from repositories), or by scanning bots (which doesn't happen in Linux because vulnerabilities are auto-patched, and a file requires user input to be market as an executable).
Of course, at the higher level (where I haven't tried to go yet), there are SELinux-secured systems, where priviledges of every file are specifically controlled, and where even a prolonged and deliberate targeted attack by hackers may be foiled.
In the end, as SELinux administration becomes more intuitive, it might start being enabled by default.