On top of this there are several different modules that can be used with these contacts. The Sales module allows the user to store and create activities, eg emails can be sent within CRM and can then have the replies to that email automatically tracked in the database. Appointments can be set up which automatically synchronise with Outlook. Various opportunities and leads can also be stored, classified, shared between teams, and reallocated to other members of the organisation.
Then there is the Service module which can track and organise various resources of the company, organise knowledge base articles, and manage service calls.
Then there is a marketing module which can be used to organise marketing campaigns, either quick campaigns like sending out a newsletter to a group of the client base, all the way up to organising major events with trackable invitations, which also ties into the resouce management of the Service module.
The major strengths of the platform is its customisability and its interoperability with the rest of office. New tables can be created by someone with a decent knowledge of the product (with no coding) and it can be customised further through the SDK inside VS.NET.
I have been working with MSCRM since 1.2 came out (for a MS partner company) doing installations and customisations and the product has matured a lot since then. CRM 1.2 was quite workable but some parts were a dog's breakfast, particularily the outlook client. CRM 3.0 has seen the outlook client improve by miles (you can run it either in outlook with off-line synchronisation capabilities or through the browser client) but still the platform had some annoying bugs. The latest update rollup has fixed most of these issues making it quite a robust package.
Well, since you asked