Good question! We could talk about this for hours :-) So let's start with this, and then both Spencer & I will augment... 'headaches" really depends more on your current environment than on SP2010 itself. Begin with the most important point: SP2010 upgrade is FAR less of an issue than upgrading from SPS2003 to MOSS2007. You are now on a .NET application with moss2007, and there is a lot less that changes, internally.
Second, the only real way to know for sure is to TEST, obviously.
One of the most important aspects here is determining the appropriate upgrade approach for your deployment. They key driver for this decision is a complete analysis of your existing 2007 environment: which parts of the product you are using, and what customizations/custom solutions are in play.
As you're doing the evaluation (per Spencer's note) you'll want to be sure you are familiar with the 4+ approaches to migration. MS TechNet describes in-place, database attach, and hybrid approaches pretty well. There is also a very interesting option raised by an MVP that involves building a clean farm (always nice) but maintaining your user profiles by doing an in-place upgrade and a backup/restore of the service app. Finally there are third party products that can facilitate migration. So there are a LOT of approaches, and you can mix and match in some interesting ways.
One key point to note is that SharePoint 2010 is 64-bit only. Therefore is requires a 64-bit version of Windows Server. If you are currently on 32bit you will need to move to 64-Bit first before upgrading to SharePoint 2010.
Dan: And the 64-bit requirement goes through to SQL Server as well. SP2010 supports SQL 2005 and later (with appropriate Service Packs and Cumulative Updates) but it has to be 64-bit.
If you're on a 32-bit farm now, I'd SERIOUSLY think about a clean build. The number of moving parts in a 32-bit 2007 to 64-bit 2010 upgrade make it a lot less attractive.
As you think about upgrade, I recommend focusing on three things: content (site collections), configuration (of the farm), and services (SSPs). Each upgrade method has pros and cons for each of those categories of upgrade. And if you're OK "starting over" in one or more of those categories, it can make for a cleaner upgrade. For example, if you're OK re-indexing for search and re-synching user profiles, then you don't need to do an in-place upgrade to migrate your SSP(s).
This question was answered by Spencer Harbar, Enterprise Architect at Microsoft and Dan Holme, Consultant and Trainer, Intellium.
To see other answers submitted to the Answer Wiki
View Answer History.