Вы можете использовать DirectX.
Добавьте ссылку на Microsoft.DirectX.DirectInput (после установки DirectX на вашем компьютере. Вот SDK .)
Создать экземпляр класса устройства:
keyboard = new Microsoft.DirectX.DirectInput.Device(SystemGuid.Keyboard);
И теперь вы можете слушать клавиатуру.