Вы можете попробовать это:
var timeLimit = new TimeSpan(0, 0, 15); // 15 sec
var dateStart = DateTime.Now;
var inputs = new List<string>();
while ( DateTime.Now - dateStart <= timeLimit )
inputs.Add(Console.ReadLine());
Мы используем TimeSpan
, чтобы установить допустимое время.
И так как вычитание двух дат равно TimeSpan
, мы сравниваемэто до разрешенного времени при добавлении входных строк в список.
Список добавлен для примера, и вы можете управлять входами в цикле или вне цикла.