В Windows есть целый API для написания приложений «Консольного режима». Он позволяет прослушивать ввод с помощью мыши или клавиатуры в зависимости от события, а также устанавливать цвет текста и фона, позиционировать курсор и т. Д.
Чтобы создать поле, подобное тому, которое отображается в CMD.EXE, вы используете определенные специальные символы для создания границы (есть различные угловые элементы и края - используйте приложение Character Map, чтобы увидеть их все).
Чтобы использовать API консоли из C #, вам, вероятно, нужно использовать pinvoke, например,
[DllImport("kernel32.dll")]
public static extern bool SetConsoleTextAttribute(
IntPtr hConsoleOutput, int wAttributes);
См. Документы для SetConsoleTextAttribute , чтобы узнать, как использовать его для установки цвета.