What were the market forces or limitations that led to NFS prevailing?
Sun pretty much gave it away. It was simple and 'good enough.'
The Issue was it not a real UNIX file system and did not support full UNIX semantics. For a lot of things (like program development) that was usually ok. It also exposed a lot a issues in user code - things like programs that never bothered to check for errors returns (like fclose).
So bad things happened for a long time in a lot of code (silent holes in your SCCS files that did get detected until months later).
But to Sun and NFS's credit, it solved a problem that was there and was cheap and so folks used it.