I am currently trying to get real-time keyboard input (both press, hold, and release) in a C# console application. I've found a way that works using only Console.ReadKey(). Problem is that windows sets a delay before a key is repeated. I have found various other questions asking how to change this in code, but all the answers simply tell you to use the built in press, release, and hold events in a windows forms application. I can't use those in console.
As a note, i do not know much about API coding or DLL's.
See this previous post by me for further motivation if you need it to answer: C# Console application: Console.Readkey() has odd initial skipping behaviour on high framerates