Off the top of my head, I'd say that C is used for systems programming due to direct addressing of memory via pointers and it being as low level as you can get without getting into machine specific assembly. Speed is more of a byproduct of being extremely low level since you've got very low overhead.
I'd be curious what you see as the inherent flaws in C, and what would you want to see out of a better systems language?