A picture box is an actual class from the point of view of the Win32 API, assigned a device context, handle and compatible device independent bitmap, and is thus suitable for bitblitting, swizzling and other raster operations, including those involving the windows API. An image box is not actually anything in terms of windows, being simply a convenient way of causing VB to paint the image as part of the form (as if you added equivalent code to the Form_Paint() event), and paints using the form brush as opposed to an independently manipulatable graphics object.
Thus a picture box is primarily for when you wish to manipulate an image, whereas an image box simply displays it, and uses less resources. A picture box also paints independently of the window, supporting double buffering, so appears "faster". As it is assigned a handle, it can also be a containing window, both of other controls like a frame in the form designer, and also other top level windows like an MDI form, using the SetParent API. Hope this helps
