What do you mean by "create a surface from a PictureBox"? If you want to blt the contents of a PictureBox to a surface, create the surface, call the GetDC method of it, then use BitBlt to blit the contents to the surface. If that's not what you mean, provide more explanation on what you want to do.