• Change Data Capture (CDC) is leveraging the changes applied to the logs as opposed to the actual database, as a result it will "no" impact on your DB performance so it's "better".

    One of the downside is that you have to enable it (per DB, per table if memory serves me well) and then get your process up and running.

    Triggers will have an impact on the DB performance, due to resources sharing, locks, etc.

    CDC is the way to go.

    Links:

    http://channel9.msdn.com/Blogs/ashishjaiman/CDC-Change-Data-Capture-SQL-Server-2008

    http://www.simple-talk.com/sql/learn-sql-server/introduction-to-change-data-capture-(cdc)-in-sql-server-2008/

    http://www.sqlservercentral.com/articles/Change+Data+Capture+(CDC)/64289/

    http://www.databasejournal.com/features/mssql/implementing-sql-servers-change-data-capture.html

    HTH,

    B