Report individual changes to data I need to produce a daily extract on the individual changes to a dataset. So, there are 14 tables containing product and customer information and the extract must only show records from each table that are newly entered or records that have had any column updated.

What would be the best way to do this please?

We are using SQL Server 2008 R2, and develop in C#.

Thanks
We've used Change Tracking to handle this.  We've found it lightweight and easy to set up and administer.  The largest system's moving tens of thousands of rows (from a table containing millions) per day without signs of stress. Of course your configuration will dictate your throughput.

It's big cousin - Change Data Capture (CDC) - will handle the case where you need to know the "before" and "after" values for each and every change that happens.