The details on how to use a Recaptcha control are on the Recaptcha Documentation.
Basically, this is how you do it:
Add this to the top of the page:
<%@ Register TagPrefix="recaptcha" Namespace="Recaptcha" Assembly="Recaptcha" %>
Then use the control in your webpart like this:
<recaptcha:RecaptchaControl
ID="recaptcha"
runat="server"
PublicKey="your_public_key"
PrivateKey="your_private_key"
/>
To place this control on the WebPart from the .cs file, you can do something like:
protected void Page_Load(object sender, EventArgs e)
{
if (this.IsPostBack)
return;
RecaptchaControl rc = new RecaptchaControl { PublicKey = "6LcvP...", PrivateKey = "6LcvP..." };
this.Controls.Add(rc);
}
Since Sharepoint WebParts are ASP.NET controls, you can dynamically add controls as you wish. Handling them on PostBack could be a bit of a bother, but there's a lot of resources on this subject all over the net, including on this site.
You should go through the Recaptcha documentation to see all the properties you can use.