C came to dominate the world because of Unix. But not directly, because Unix didn't really dominate the world other than some of the institutional and corporate world. GNU and Linux picked up the domination torch and are still working on it.
I strongly suspect Microsoft was the catalyst which propelled C, absent of Unix.
Microsoft had been infatuated with Unix from early on. They had their own version called Xenix, based on AT&T licensed code. Part of the MS-DOS API consists of "Xenix functions", imitating some Unix-like things. MS-DOS, and consequently Windows feature Unixy conventions like .. for the parent directory and . for current, even though the underlying link concept isn't there.
Microsoft produced a C compiler + IDE which I believe highlighted and legitimized C as a viable language in the mass market world of IBM PC compatibles.
According to the Wikipedia page on Microsoft Visual C++, Microsoft already had a C compiler out in 1983.
"Microsoft C 1.0, based on Lattice C, was Microsoft's first C product in 1983. It was not K&R C compliant."
Microsoft picking up Lattice C and running with it is probably what caused the C explosion. Borland joined in the fray in 1987 with Turbo C.
But wait, Microsoft had a Lisp product too: why didn't that help?
[plain HTTP!] http://www.edm2.com/index.php/Microsoft_LISP
Probably they just didn't peddle it hard enough.
Microsoft also used C for developing Windows, and supported C development for Windows:
https://en.wikipedia.org/wiki/Microsoft_Windows#Early_versio...
"Microsoft sold as included Windows Development libraries with the C development environment, which included numerous windows samples."
The rise of MS Windows dragged C with it, with the API's and code samples being expressed in C.
Plus, it was probably not lost on the PC programming population that if they learn and work with C on that platform, their skills will be applicable in Unix and elsewhere.