I have a Mac. I use an X-Rite ColorMunki Photo. It'll do displays (as well as projectors) and printers. The ColorMunki Display doesn't do printers -- it does display and projector calibration only.
It's pretty easy to use. Install the software, plug it in, and just do what it says.
It'll have you connect the ColorMunki and put it through a self-calibration (it has an internal calibration target. You rotate the camera to it's internal calibration target, click it to let it calibrate, then turn it back to monitor calibration mode.)
It'll prompt you to rest the ColorMunki on the middle of your display.
It has a soft case and lanyard. The lanyard has some heavy counterweights. You drape it over the top of your display and the counterweight will hold the ColorMunki in place.
Just leave it alone and it'll take over control of the graphics card and start testing various color and brightness levels. This takes a minute to complete.
When it's done it will create a profile and prompt you to name & save it.
The profile is stored in the Mac OS standard location which is ~/Library/ColorSync/Profiles (that directory already exists on your Mac) There's also a system level version of the directory at /Library/ColorSync/Profiles (if it's saved in the system Library then the profile will appear for all users of your Mac. If it's in your user's Library folder (~/Library...) then it only shows up when YOU are logged in.
It will make it's own profile active. But you can change profiles at any time. If you go into "System Preferences" -> "Displays" -> "Color" you'll see all the profiles... including the one the ColorMunki created.
Once nice about the fact that it creates OS standard color profiles is that once your display is calibrated, the ColorMunki software isn't used (you could technically delete the software... although leave it on so you can re-check your calibration from time to time.) It will install a utility which will remind you to re-calibrate from time to time. While CRT and florescent-backlit LCD displays can drift quite a bit, I find that the LED backlit monitors hardly drift at all. When i re-test in a month there's no perceptible change. Now I test substantially less often.
The printer, on the other hand, might need more frequent calibration. Every brand and type of ink will be different. Also... every paper will absorb that ink and reflect color differently depending on paper type. That means your "profile" of your printer is really more of a profile of your print/ink/paper combination. If you change anything (e.g. buy a different brand or type of paper) then you need to make a different profile for that new combination. I save my profiles with name of the paper in the profile name. I only use one type of ink, but I might change paper. That way I can flip between paper profiles (as long as I've made a calibration for that particular type before) without having to recalibrate.