This was something I pulled from a test program I was messing with. I was writing an application to send some information to a remote database and to prevent "flooding" I could write in a captcha. Granted I would never include this because of how simple it is, it was rather easy.

First off our function to create the random string of letters.

Code:
    Private Function generateCaptchaString()

        Dim rand As New Random

        Dim currentLetter As String

        Dim captchaString As String = ""

        For i = 0 To 6

            currentLetter = ChrW(rand.Next(Asc("A"), Asc("Z") + 1))

            captchaString &= currentLetter

        Next

        Return captchaString

    End Function
Then the code for creating the image with the string as apart of it.

Code:
        'Set captchaText to what is generated in the function generateRandomString

        Dim captchaText As String = generateCaptchaString()

        'Creating a bitmap in memory

        Dim captchaBitmap As New Bitmap(200, 40)

        'Creating a Graphic so we can manipulate how the image will look

        Dim captchaGraphic As Graphics = Graphics.FromImage(captchaBitmap)

        Dim captchaFont As New Font("Arial", 14)

        'Set the Text color

        Dim captchaForeColor As New SolidBrush(Color.Blue)

        'Set the background color

        Dim captchaBackgroundColor As New SolidBrush(Color.Yellow)

        captchaGraphic.FillRectangle(captchaBackgroundColor, 0, 0, Width, Height)

        captchaGraphic.DrawString(captchaText, captchaFont, captchaForeColor, 5.0F, 5.0F)

        pict_Captcha.Image = captchaBitmap