When the iPhone first launched, you synced your calendar by syncing your iPhone itself. You connected it to your Mac via USB, and your Mac's copy of iCal and your iPhone would share calendar events. That's a clunky approach to sharing data, even after iOS 5 introduced Wi-Fi syncing to the picture. Even with over-the-air syncing, you still have to re-sync your devices every single time you want your calendars to be current.
In an ideal world, your calendar would be in perfect sync on your Mac and your iPhone, without any manual syncing required. There must be a way to pull off this feat.
As a matter of fact, there are two. Let's look at how each one works.
Apple's way: iCloud
With iOS 5, you can use Apple's iCloud service to sync your calendar. iCloud is free, it's not too painful to set up, and it works seamlessly with both the iCloud website and iCal. And best of all, the syncing occurs over the Internet, in the background, without any extra effort on your part.
If you're not yet using iCloud on your iOS device, here's how to get started: Launch the Settings app, scroll down to iCloud, and tap it. If you haven't yet created or logged into an iCloud account, you'll be prompted to do so now; you can use your existing Apple ID, or create a new iCloud account in seconds using your email address. Once you're in, make sure the slider next to Calendars is in the On position; that ensures you'll be using iCloud to sync your calendars.
Switch over to the Calendars app. Tap the Calendars button at the upper left to see a list of all the calendars your device is currently accessing. The default iCloud calendars are Work and Home; tap the Edit button at the upper left to add additional iCloud calendars.
On your Lion-running Mac, fire up iCal. Click on the Calendars button--again, it's at the upper left--and verify whether your iCloud calendars are listed (and checked) there. If you don't see your iCloud calendars there, go to the iCal menu and choose Preferences.
In the Preferences window, click on the Accounts tab. Then click the Plus (+) icon at the lower left to add an account. For Account Type, choose iCloud from the drop-down menu, and enter your Apple ID and password. Click Create, and you're done.
Now, when you add events on your iOS device, they'll show up in iCal. Add something in iCal, it shows up on your iOS device. If you use an iPod touch to put your next dental checkup on the calendar at the reception counter, the appointment will automatically sync to iCloud the next time your iPod touch gets online--without your even needing to launch the Calendar app.
Sometimes, it might take a few moments for a new event to show up on your Mac. You can force iCal to refresh your events from the Calendar menu: Choose the Refresh All option. One word of caution: Though we hear fewer reports recently, some folks--including various Macworld staffers--have encountered issues where iCloud ended up duplicating their calendars. If you encounter such an issue, the solution is to ensure that you only sync a given calendar in a single way. That is, if you use iCloud to sync a calendar, but you also separately sync some of your calendars via iTunes, duplicates may ensue. You can ensure that your iOS device isn't syncing your calendar with iTunes by clicking on the device in iTunes, choosing the Info tab, and ensuring that Sync iCal Calendars is unchecked.
Google's Way: Google Calendar and Exchange syncing
iCloud's a good option, but it's not the only option. Folks already invested in Google Calendar should be happy to learn that Google offers a free approach to syncing your calendars between the website and your iOS devices. You'll still use the Calendar app on your iOS device, and you can use Google Calendar, or an app that connects to it (including iCal) on your Mac. (Note that this same basic approach works if you're using Google Apps, but your administrator will need to enable Google Sync.)
Google enables its form of calendar syncing through its use of Microsoft Exchange. To start syncing, you'll add your Gmail account to your iOS device as an Exchange account, and then use some Google-specific steps to determine precisely which calendars sync.
On your iOS device, launch the Settings app and tap on Mail, Contacts, Calendars. Tap Add Account, and choose Microsoft Exchange. Put your full email address in the Email field, leave Domain blank, use your full email address again as the Username, and finally provide your password.
Now, tap Next at the upper right. You might then see an error message indicating that your iOS device is unable to verify a certificate; you can safely ignore this message. In the new Server field that appears, enter m.google.com. Then tap Next at the upper right.
At this point, you choose which services you'd like to sync via Google's Exchange server. You could use your Exchange setup for syncing Mail and Contacts, but for our purposes, you only need to leave Calendars turned on. Once that's set up, you need to tell Google which of your calendars you'd specifically like it to sync with your iOS device.
To do so, launch Safari on your device, and navigate to m.google.com. Sign in if necessary, using your email address and password. (If you're a Google Apps user, first scroll down and tap the Google Apps User link at the bottom of the screen.) Once you're signed in, tap Sync. You might get prompted to log in again; if so, suffer through that indignity.
Google will present you with a list of iOS devices that you've linked to your Google account. Tap on the one you're currently using, and scroll down to the list of calendars. You can check to sync up to 25 calendars.
Once the setup process is behind you, Google offers the same benefits as iCloud calendar syncing: You can access your calendars from multiple devices and they sync seamlessly over the Internet.
Which approach to choose
Setting up Google Exchange syncing is the tougher option. iCloud os simpler to set up and offers no less functionality. But if you already use Google Calendar for work or out of personal preference, it may well be worth the more complicated Exchange setup instead.
[Lex Friedman is a Macworld staff writer.]