The most straightforward approach is to create a new Date (start at 0 years, 0 months, 0 days, 0 hours, 0 minutes, and 0 seconds) and add to it the difference in seconds between the two dates.

As the Agno's solution suggested, you have to get the difference in the minimal unity you need, and then convert to other unities.

For example, if you have to show a hour and minute format, you have to get the difference in minutes using DiffMinutes() and then see how many full hours and remaining minutes you have in this value.

e.g: if you have 130 minutes returned in DiffMinutes() you would have 2 full hours and 10 minutes remaining.

The same thing can be done for seconds.

If you have to show a hour, minute and second format. You have to get the difference in seconds using DiffSeconds() and then see how many full hours, full minutes and remaining seconds you have in this value.

This calc can be achieve using the example Agno posted.

Also the solution Nuno pointed, is a way of doing it, however it will return a DateTime as result, with a given day, month and year.