I need to save an image of a machine and redeploy it later, but the hardware will be different on each computer (so I can't use clonezilla without driver problems). I've done some research and it looks like sysprep will be really painful and involved. Is there a better way?
Image of what? XP? Windows 7?
Sysprep is it - because sysprep properly removes the system's identifying components, for lack of a better description coming to mind. While Mark Russinovich detailed a year ago that SIDs were really not an issue, he also noted that some services still need sysprep to have been run for a cloned machine to work properly (he noted WSUS).
In the case of XP, yes, you are likely to have headaches when you clone between CHIPSETS (which is really the key point in XP). For Windows 7, I think the only restriction is CPU Brand - one image for AMD, one for Intel and you should be good. (and of course, one 32 bit and one 64 bit - if you want both platforms).
Of course, you could look into Microsoft's deployment tools - they are QUITE EXTENSIVE, offering task sequences that can make the deployment of apps and similar items much easier. Specifically, check out: