The top end IMac gives a very respectable performance, but you can't change much. The MacPro on the other hand gives you the ability to swap disks, change video cards, add in new cards. I've yet to find something that can tax my 8 core 2008 MacPro. I've changed video cards in it already, as the 8800 died.When I bought it I planned on keeping it for 5 years, which will take it to early 2012. Before I got the MacPro I was constantly upgrading a windows based gaming machine. I could argue that the MacPro has replaced the costs of upgrading, but at a higher initial outlay. In my Pro I have a disk for Win XP, Snow Leopard, Storage, and Lion, which isn't used much LOL
If you are looking for a computer that you won't have to or need to sell to keep up with software demands then the MacPro is a good bet for the long term. If you don't mind selling and buying more often, then an IMac might be best for you. Plus you get a free mirror with the screen.