Let me clarify my question. In todays world there are lots of devices that has built-in support for Contacts or a Calendar, if not both. In this case, I'm going to imagine a personal set of devices: A windows PC, an iPad and a Mobile 7 smartphone. (I currently own the windows PC and the iPad, but the remaining two are upcoming)
I have a dream of a central location for all my contacts and calendars. Currently I'm using Google Contacts and Google Calendar (which covers Windows) synchronized using a windows Exchange profile in iPad for my calendar and contacts. I'm fairly happy with it, but it lacks some data fields in the contact sync, for instance birth dates.
A scenario from previously mentioned dream would be (Just an example, you don't have to read it):
I get a mail from an old friend one day (On my PC). I feel like saving his as a Contact. So I open my Contacts folder in Windows 7, click "New Contact" and type in his name, E-mail, phone number and blog URL. As soon as the contact is saved, the contact is synchronized with all my devices. I then send him a mail on my iPad from a coffee house on WLAN, using the contact created on Windows. Later, on the bus, I send him an SMS from my Mobile 7 phone. He responds with the date of a movie I've been wanting to see. I pull up my iPad and create a new Event on the calendar. Later, I open my Calendar on Windows to find the information for the movie I'm going to see.
All of these devices act as if operating from the same data source.
The reason I'm posting this question is to figure out the best method of storing my Contacts and Calendars. ("Best" meaning covering as many devices as possible retaining as many features as possible, and obviously being live two-way synchronization)
Examples of such methods would be
Google Contacts & Google Calendar,
Apple MobileMe -
The most reasonable and convincing answer will be marked as correct.