Plasmoids are applets that can be added to any containment like a panel or the desktop.
Applets are compared to DataEngines the visible part of Plasmoids. They provide something the user sees and is able to interact with.
For one DataEngine there may multiple applets that present the data in different ways. As example there may a analog and a digital clock that both, while looking different, are showing one thing: Time.
DataEngines are compared to Applets the invisible part of Plasmoids. They are the data source and are information providers.
As example there exist only one DataEngine for the current time which can then be used by multiple clock applets to show the time.
So to have a Clock Plasmoid:
Plasma --> Time Data Engine --> Analog Clock Plasmoid and Digital Clock Plasmoid
Containments are containers that allow to group elements.
The panel displayed per default at the bottom of the desktop is a container for various Plasmoids like the application launcher startmenu, a list of tasks, a desktop-switcher or a clock applet.
What elements are in the panel is configurable. That means, that a user can add more Plasmoids to the panel or remove existing ones.
Compared to an Plasmoid the panel, while being itself an applet, can contain also other applets and even other containments like panels.
The desktop itself is also a containment. The default desktop, those that will show up if you start KDE4, contains the panel containment and a few other Plasmoid like icons.
Just like there may multiple panels within a desktop, they may also multiple desktops the user may use.
One example is the default desktop someone sees if KDE4 got started. Another example may then the multiple desktops the user is able to switch between using the desktop-switcher. Other samples are different desktops for different monitors, another one for tv-out, for small devices, presentation mode aka presenter view, etc.