I switched six years ago. Funny story, actually. I interviewed for a job where computer use is a big part of it. For the previous ten years, I had been working with Windows. On my first day on the new job, they showed me to my desk where the IT guys had just installed a brand new, High-end workstation. It was a Mac. Through all of the interview process, they never mentioned that they were a Mac shop! So I went home and bought one online that night, along with a few books to teach me how to program with it.
I've been very happy with the switch.
Some observations:
1) They are terribly expensive. However, the one I bought six years ago is still running fine and is still usable. I've upgraded it as far as it will go. I never had a PC laptop that lasted as long and aged as gracefully. My opinion in that regard is that Macs are more money up front, but over the course of their use, the expense really is a wash.
2) The learning curve was pretty flat. WIthin a day or so, I was moving around and doing things just as well as I was on PC. For keyboard shortcuts, they're almost all the same, only substituting "Command" for "CTRL." e.g.: On a PC, Copy is CTRL+C, paste is CTRL+V. On a Mac, it's Command+C and Command+V respectively. I'd say that 90% of the keyboard commands are thusly similar.
3) They are not immune to viruses, at all. That said, I' have never had one on any of my machines, but that is not because they can't get them. Fact is, PCs get more viruses, Malware and other such things because more people are writing them for that platform. As Macs become a larger portion of the market share, expect people to begin writing viruses for them, too. IN fact, there was one a month or so ago.
4) I don't give mush credibility to the "PCs are more upgradable" thing. Macs use Intel processors, Nvidia and ATI video cards, etc. Same things as PCs. Most PCs you buy from computer stores have integrated video, sound, etc just like Macs, so they are no more upgradable than a Mac. Unless you're building your own computers from components (Which I used to do back in the day), it's somewhat of a moot issue. On my Macbook, I have upgraded memory, Hard drives, and processors myself all with generic stuff I bought from the computer store. On my Mac Pro (Apple's high end workstation) most of the components are modular, so they can be swapped out. With my Mac Pro, I've upgraded video cards, RAID Controllers, RAM and Processors. The Mac Pro is very, very upgradable. It's also Apple's most expensive computer.
5) Mac Software can crash. However, it's a lot less likely to bring the OS down with it. I've had some crappy software on the Mac that crashed a lot, but the OS remained stable. In six years of Mac use, I've had a Kernel Panic (the equivalent of the Blue Screen of Death) maybe twice or three times. I think I had that happen with Windows more often, but not so much that it is really worth mentioning.
6) I can run Windows either in a virtualization system (like Parallels) or I can boot the machine straight into Windows (Or linux, for that fact). I have used both virtualization and direct booting and it works flawlessly. One issue with virtualization is that it is resource intensive. You're basically running two OSes, plus your software on one machine simultaneously. If you're using Windows software that is processor intensive, you'll be happier direct booting into Windows.
Recently, I upgraded. I gave the old Macbook I bought six years ago to a family member going to college and bought myself a new MacBook Pro, Quad core Intel i7 processors, two video cards (one low power intel card on the board for everyday graphics, a second AMD/ATI Radeon for higher-end graphics) lots of RAM and Solid-state hard drive. I'm pretty much sold on Mac. I like it. But I can afford it. If I could not afford it, I would get a Windows machine and I'd probably be just as happy with it. In the end, it comes down to preferences, and how well you take care of it. Installing junky, crappily-written software on any computer will cause problems, no matter the OS.
This is my experience. For my wife, it's totally different -- Macs are the only choice. She's a genetic researcher, and most of the genetics software she uses is written for the Mac, or for Unix/Linux, and Mac OS X is UNIX at it's heart so it can run Unix software natively. As to why so much of the genetics software is Mac-centric, it's an accident of fate: the first guy at a university who thought of using personal computers for genetics work way back in the late 70s and early 80s programmed it for the computer he had -- an Apple II. In 1984, he upgraded to a Mac, and re-wrote his software for that. He was a pioneer in computer applications for genetics, and many of the people who learned to write that software learned it from him. Of course, they learned it on Mac, too. So, to this day, much of that software is written for Mac. Old habits die hard. PCs have made inroads in that sector, but that notwithstanding, she and most of her colleagues have Macs on their desks.