How many of your records contain Nulls? Also, you may want to follow a suggestion that was put forth earlier and only update rows that are different. If there are a significant amount of Nulls or matches then you may see some improvement.
UPDATE a
SET a.field1 = b.field1
FROM table1 a
INNER JOIN table2 b ON a.id = b.id AND a.status = -1
where (a.datekey > '20100101') And (a.field1 != b.field1) And (b.field1 IS NOT NULL)
Go