Difference between 2 DateTime fields in Hours and Minutes with timezones

I am having trouble in finding the difference between 2 datetime variables and reducing the offset timezone difference in order to get the local time from the salesforce generated GMT time.
I have a requirement to find the difference between 2 datetime field in terms of hours and minutes.
My time zone is EST and sometimes i was asked to calculate for CST as well, how can this be done?