No, virtual memory and client/server computing do not drive multi-tasking. Virtual memory helps make it work better, but with sufficent real memory, you do not need virtual memory. Multi-tasking is needed because people want to do several things at once, or want to switch quickly between them. Windows at least since 2.11 has supported some level of multi-tasking. It was cooperative, but it was multi-tasking. NT was the first Windows version that had "real" multi-tasking. A classic and easy to understand example of why humans want multi-tasking is that they want to play a music file, have their email program downloading email, all while they surf the web using FireFox.
1. Increased speed and memory capacity of microprocessors together with the support fir virtual memory 2. Growth of client server computing.