RawInput .NET est un wrapper managé de l'API Win32 du même nom, qui permet de gérer tous les périphériques répondant à la norme USB/HID ainsi que de gérer plusieurs souris ou plusieurs claviers. (chose que même DirectInput ne sait pas faire.)
J'ai fait le choix de faire un wrapper assez proche de la librairie originale, (une unique classe et un seul évènement statique pour tous les types de périphériques) ce qui permet de garder de bonnes performances et ne nécessite pas d'apprentissage si on connait la version Win32.