Several users have reported an issue in which iPhones do not transfer all Exchange contacts, stall during the sync, or fail to sync altogether, after the update iOS 4.1. In other cases, calendar syncing may exhibit similar problematic behavior.
Limit event syncing. In some cases these issues can be resolved by simply reducing the span of events that are synced. On your iPhone, go to Settings> Mail, Contacts, Calendars> Calendars> Sync and select “Events 1 Month Back” then reattempt syncing. Failing that, try: “Events 2 Weeks Back”