Поскольку вы пытаетесь представить период времени из произвольной точки, а не как конкретную дату, возможно, вам было бы лучше использовать класс System.TimeSpan ?Это позволяет устанавливать в конструкторе значения более 24 часов и может использоваться с объектами DateTime, например:
System.TimeSpan timestamp = new System.TimeSpan(25, 0, 0);
System.DateTime parsedDateTime = new DateTime(0, 0, 0);
parsedDateTime = parsedDateTime.Add(timestamp);
Console.WriteLine(parsedDateTime.ToString("yyyy-MM-dd HH:mm:ss")); //Output as "0001-01-02 01:00:00"
ПРИМЕЧАНИЕ: Код не проверен.
РЕДАКТИРОВАТЬ: С точки зрения синтаксического анализа строк, я не могу думать о каких-либо базовых объектов .NET, которые анализируют строки со значениями больше 23 для часа (так как 25 является недопустимым часом дня), но при условии, что формат является единообразным, вы можете создать очень простую процедуру анализа строк (или даже регулярное выражение) для чтения значений по отдельности и загрузки конструктора вручную.