Convert Time to decimal in C#
DateTime dt1 = DateTime.Parse("11:55");
DateTime dt2 = DateTime.Parse("9:35");
double span = (dt1 - dt2).TotalHours;
Do you actually need the "2:20" or is that just an intermediate step?
Edit: If you wanted to go back, you'd just need to do a little bit of math. Take the remainder of the decimal and multiply by 60, then round. Those will be the minutes, so just add them to the hours.
Or you could do like this:
decimal dec = Convert.ToDecimal(TimeSpan.Parse("11:30").TotalHours);
// returns: 11.5