You can create a completely transparent section of a form (e.g. to make a
circular form) using the Region property. You can also set the
Form.BackgroundColor to Color.Transparent if you want. (see also
ControlStyles.SupportsTransparentBackColor).
You can then paint the graphics using alpha-blending, by either creating a
color to paint with (Color c = Color.FromArgb(128, Color.Blue); ///
creates a 50% opaque blue) or creating a ImageMatrix with element[3][3] set
to your desired opacity and calling DrawImage using a ColorAttributes
structure using that ImageMatrix, kinda like this:
ColorMatrix cm = new ColorMatrix();
cm.Matrix00 = cm.Matrix11 = cm.Matrix22 = cm.Matrix44 = 1;
cm.Matrix33 = AlphaBlendAmount;
// Create an ImageAttributes object and set its color matrix.
ImageAttributes imageAtt = new ImageAttributes();
imageAtt.SetColorMatrix(
cm,
ColorMatrixFlag.Default,
ColorAdjustType.Bitmap);
...
DrawImage(..., imageAtt);