SQL Compare byt redgate software is a very good and cheap tool. The only real problem I have with it is that it cant be used to generically compare say two different script files you have that were not generated from sql*compare. So its not that "generic" as such. Even so, its damn cheap and I liked the ability to save away previous comparisons. The front-end is nice and very well designed.
Author of "SQL Server Backup, Recovery & Troubleshooting"
Author of "SQL Server 2k for the Oracle DBA"