Virtual desktops are an old concept, centered around the thought of operating multiple applications on each of several separate desktops that are running in unison.
This allows for a separation of tasks to the degree that, for example, a web browser, email client and other social activities can be open on one desktop, work-related documents in another, and image-editing in yet another.
Virtual desktops are called workspaces in many distributions of Linux, and have also been known as multiple desktops.
Activities are, as of now, unique to KDE, and are very similar to virtual desktops, but allow for a greater range of options, customizations, and task-orientation. Unique activities are often set up on each virtual desktop so that the two can be utilized together.
To summarize the difference between these two options, I would say that virtual desktops are like working with multiple monitors all lined up on one desk, while activities are like switching to another PC entirely, on a separate desk — maybe even in a separate room!
(That may have made more sense in my head than it does on the screen, but stick with me, and it should all clear up as we go.)