Console.ReadKey(true) => It refused to read ESC (\x1b)Console.In.Read() => write the ANSI escape sequence on screen and doesn't have any result until clicking enter(which would loaded a set amount of item based on buffer size, and further item is discarded)StreamReader and set console input to the stream reader by Cobsole.SetOn, then use .Read() to read => Same result as above