В своем блоге мигель рассказывает про класс getline.cs с помощью которого можно несколькими строчками кода встраивать полноценный консольный текстовый редактор в свое приложение.
http://tirania.org/blog/archive/2008/Aug-26.html
Поддерживается обычное редактирование курсором, редактирование в стиле емакс, история команд, поиск в истории, загрузка и сохранение истории команд.