It's great that you're curious. A simplified explanation follows with a few links to delve into:
All of the programs running in parallel is actually an illusion that is created by the OS.
Even if we have a uniprocessor system, the OS can still achieve the same thing.
For multiple programs running on the system, OS creates separate processes.
A competing architecture needs to tick these boxes reasonably well:
Doing stuff we want
Nobody will use it unless nearly all features available in popular high-level languages are supported reasonably efficiently. You can check out this paper with a provocative title: The von Neumann Architecture Is Due for Retirement. It outlines a lot of the challenges ...