Can I restore an iPhone backup taken from a previous iOS version, or is there a better way to retain my data? I just put orders in for a few new iPhone 4S upgrades for the wife and I but I'm not sure how to keep her data (app data mainly, the other essentials are synced with outlook).

She has an iPhone 3G, so can't upgrade to iOS 5 then backup where my 3GS phone can.  Can an iTunes backup of her 4.2.1 (latest she can get) iOS be restored to a newer iOS 5 phone, or will it only work on an equivalent 4.2.1 iOS-running device?  Or...is there another series of steps to make that possible?

If not, is there a completely different way to get her app data off the phone and onto her new one?

Aside: I realize I can test this as soon as the phones actually arrive...but we're sending the current ones off for resale as soon as possible after getting the long-awaited upgrades.  For that, I'm trying to get anything I may need to order for the transfer, etc. taken care of ahead of time.
Yes, this is possible.  The backups themselves contain application data and other information that isn't particularly version-specific (with the exception of going from 4.3 backwards, as pointed out by hobs above).

In fact, I had to do this exact process recently, going from 4.2.1 to an iOS 5.0 gold master on an iPhone using a backup, and it went off without a hitch.  Developers who want to install a prerelease OS version must put their devices in recovery mode, clean install the OS, then restore application data and settings from a backup.  I did this for my iPhone, which I hadn't upgraded to the latest 4.x OS, and everything came across cleanly to iOS 5.0.

The one thing to watch out for is that if you don't encrypt your backups (by selecting the "Encrypt iPhone backup" option in iTunes), your device's keychain will not be transferred to the new device. For non-encrypted backups, the keychain is only preserved when restoring onto the same device you backed up from.