Performance issues while using OOM

Today I ran into a problem where the customer was using OOM to fetch contacts from Outlook... they had more than 3000 contacts in there Mailbox and it was taking forever to loop through all the contacts and storing them into a dataset... hmmm I could run the same code fine on my machine... what could be the problem.

After some research I realized if I disable Cached Exchange Mode  from my Outlook I could also reproduce the problem.

Its recommended if you are using Outlook and Exchange together to enable cached mode to increase the performance.

How cached mode impact performance?

In cached mode a copy of your mailbox is stored on your computer and this copy provides quick access to your data and is frequently updated with the mail server.

Suppose due to a connection problem you are working offline but your data is still available to you instantly wherever you are. If a connection from your computer to the computer running Exchange server isn't available, Outlook switches to Trying to connect or Disconnected. If the connection is restored, Microsoft Outlook automatically switches back to Connected or Connected (Headers). Any changes you make while a connection to the server isn't available are synchronized automatically when a connection is available. You can continue to work while changes are synchronized.