Flash and Shockwave are two different Web-based application environments that are often confused for each other. They were both developed at Macromedia, and are now owned and developed by Adobe. They are both used as plug-ins in Web browsers to play animation and content such as free online games.
Shockwave is an engine that plays back content created in Adobe Director, a multimedia authoring environment that dates back to the late 80s and is currently in version 11. Flash is an engine that plays back content created in Adobe Flash, a younger content development environment.
The confusion comes not only from the fact that they both are used in similar ways, but also from Macromedia's early use of the term Shockwave to describe Web-based plugins for all of its products. So the first versions of the Flash player were called "Shockwave Flash."
Shockwave/Director is not only developed using a different programming environment, but also includes a full 3D engine that uses 3D hardware and software in the same way most modern games do. Flash is primarily a vector-based 2D engine. So either environment can be used for 2D online games, but only Shockwave can make true 3D online games.