int num1 = Console.ReadKey().KeyChar;
Вы читаете символ, а не число.Просмотрите документы для ConsoleKeyInfo.KeyChar.
Разрешите пользователю вводить действительные числа:
int num1 = int.Parse(Console.ReadLine());
Сосредоточьтесь на обработке ошибок и операторе switch в версии 2 вашегопрограмма.