The MIDI protocol is very specific to music, it works in the context of "note on, key pressed this hard. other note on. note off. note off." etc.
The "normal" connectors are fairly bulky by modern standards (large DIN-style, like on really old keyboards and mice).
The electric level would have been a good basis, so one could imagine a world where MIDI was extended to also transport keyboard keypresses etc, but it would have meant extending the protocol quite a bit, or weirdly mapping concepts onto the music-specific basics. (EDIT: actually, it might be kind of overkill, and thus more expensive than simpler methods. What's useful in a large studio or stage environment isn't really needed on my desk)
In the days of the dinosaurs, some audio cards had a connector that could be used as either a joystick port or a MIDI port (https://en.wikipedia.org/wiki/Game_port ).
MIDI produces great value with encoding a domain specific mapping. It's one of the differences with OSC which, by
being too open-ended, provides no standard interpretation..
I'm not an expert so I might be wrong but probably because one solution that fits for all can be a bad idea. Driver complexity is one of the reasons most devices are not compatible with all existing OSs by default.
MIDI is - and should be with future standards - simple, slow and reliable: Musical Instruments don't need much/many volume/types of information, so writing the drivers should be fairly simple.
Having said that, some midi to usb converters are still not up to full compliance with the 80s MIDI 1 standard
I sometimes wonder whether the ongoing USB-C trainwreck is partly due do trying to be everything for everybody. Leading to complex and flaky HW and SW.
I'm not sure I understand your comment. USB-C is still just USB, which was already a universal messaging transport solution. Driver complexity hasn't gone up just because a new physical plug got invented, so presumably you're thinking of the increased number of devices that now use USB, with a C connector, but the fact that it can do "even more device types!" now makes literally zero difference when the spec was already designed to allow all devices: the only difference is that HW/SW is now finally capable of transmitting reliably enough to handle the massive loads those now-supported devices require (hdmi, ethernet, etc.)