In this Article, I will explain how to incorporate Captcha Control in ASP.Net. Captcha control helps to avoid spam and generally used in Contact us or Sign Up forms.

Basically the user is shown an image with some characters and user has to fill the same character in a textbox provided, then the content of the image is matched with the textbox and if it matches it ensures that it’s a valid submission and the form gets submitted.

To start with you will need o download the Free Captcha User Control from here

Once it is done you will need to add reference of the same

Right Click your Website and Click Add Reference

Add Reference

Browse and select the DLL File

Browse and Select the DLL File

Once the reference is added you will need to add this key to the web.config

<add verb="GET" path="CaptchaImage.axd"

 type="MSCaptcha.CaptchaImageHandler, MSCaptcha" />

As shown below in the httpHandlers section

Adding key to Web.Config

Now Register the control on your page using the following

<%@ Register Assembly="MSCaptcha" Namespace="MSCaptcha" TagPrefix="cc1" %>


As shown below

Registering the User Control

Now add the Captcha control on the page where you intend to place it

<cc1:CaptchaControl ID="Captcha1" runat="server"

 CaptchaBackgroundNoise="Low" CaptchaLength="5"

 CaptchaHeight="60" CaptchaWidth="200"

 CaptchaLineNoise="None" CaptchaMinTimeout="5"

 CaptchaMaxTimeout="240" FontColor = "#529E00" />

As shown below

Adding the control on webpage


There are various parameters like which you can set

CaptchBackgroundNoise – Sets the amount of Noise you want in background noise

CaptchaLength – Length of the Captcha Text

CaptchaHeight – Height of Captcha control

CaptchaWidth – Width of Captcha control

CaptchaLineNoise – Line Noise in image

CaptchaMinTimeout – Minimum Time Captcha image is valid

CaptchaMaxTimeout – Maximum Time Captcha image is valid


To verify I have added the following code to button click event


protected void btnVerify_Click(object sender, EventArgs e)



    if (Captcha1.UserValidated)


        lblMessage.ForeColor = System.Drawing.Color.Green;

        lblMessage.Text = "Valid";




        lblMessage.ForeColor = System.Drawing.Color.Red;

        lblMessage.Text = "InValid";





Protected Sub btnVerify_Click(ByVal sender As Object,

ByVal e As System.EventArgs)


   If Captcha1.UserValidated Then

     lblMessage.ForeColor = System.Drawing.Color.Green

     lblMessage.Text = "Valid"


     lblMessage.ForeColor = System.Drawing.Color.Red

     lblMessage.Text = "InValid"

   End If

End Sub

Finally the Captcha control looks like below

Captcha Control

This completes the article you can download the source code in VB.Net and C# here (20.45 kb)