The NSDate function timeIntervalSinceDate: will give you the difference of two dates in seconds.
NSDate* date1 = someDate;
NSDate* date2 = someOtherDate;
NSTimeInterval distanceBetweenDates = [date1 timeIntervalSinceDate:date2];
double secondsInAnHour = 3600;
NSInteger hoursBetweenDates = distanceBetweenDates / secondsInAnHour;
See, the apple reference library http://developer.apple.com/library/mac/navigation/
or if you are using Xcode just select help/documentation from the menu.
See: how-to-convert-an-nstimeinterval-seconds-into-minutes
–edit: See ÐąrέÐέvil’s answer below for correctly handling daylight savings/leap seconds