We've upgraded to OSX Lion and Xcode 4.1 and it has been an interesting process.
Here are the steps we took:
1. The first was to make sure we were upgraded to 10.6.8 before starting
2. Purchase and download OSX Lion from the App Store (Note, you before starting the installation you may want to create a bootable drive)
3. Install OSX Lion
4. Java is not installed by default, so after Lion is installed you can install Java by going to a Terminal and typing "java -version" and it'll start a download to install Java
5. Before installing Xcode 4.1, it's good to remove any previous versions of Xcode
Uninstall any previous Xcode by issuing a "sudo /Developer/Library/uninstall-devtools"
In ~/Library issue a "find . -name *Xcode*" and remove each file/directory
In ~/Library issue a "find . -name *Simulator*" and remove each file/directory
6. Next find Xcode 4.1 on the App Store and download and install it. This just installs the installer, and you then have to install it. The installer can be removed when you're finished
7. If Xcode launches with errors or has no menu times you'll need to reinstall iTunes. The download has the 64-bit universal builds now
The only issue we've seen is that Core Location isn't working in the simulator and generates an error. See our post on the developer forums.