First off, I take no responsibility if you fuck up your iPhone attempting this. Do this at your own risk. While these procedures are pretty solid, there is always a small chance you will "brick" your iPhone and cause it to become unusable, so don't attempt this if it will be a major impact on your life if failure occurs.

With that said...

This jailbreak is ONLY for the following: iPad 1, iPad 2, iPad 3, iPhone 3GS, iPhone 4, iPhone 4S, iPod touch 3rd generation, iPod touch 4th generation. It is NOT for the iPhone 3G.

Next, you need to figure out your OS version:

Go to Settings -> General -> About and scroll down until you see "Version".

At this point, it should either be 5.0.1 or 5.1.1.

If it is something else, upgrade to 5.1.1 through iTunes and come back here.

Also, if you have anything besides an iPhone 4S, upgrade to 5.1.1. If you have a 4S, you can leave it at 5.0.1 if you want, but you also can upgrade to 5.1.1 and this jailbreak will still work.

You will be downloading a program called Absinthe to do your jailbreaking.

Make sure to download the right Absinthe depending on your computer type and your iPhone (or iPad/iTouch) OS:

Windows computer + iPhone software version 5.0.1:

Mac computer + iPhone software version 5.0.1:

Linux-running computer + iPhone software 5.0.1:

Windows computer + iPhone software version 5.1.1:

Mac computer + iPhone software version 5.1.1:

Linux-running computer + iPhone software version 5.1.1:

Most of you will be using one of the last 3 links, presumably the Windows + 5.1.1 link.

Once you have downloaded the correct verison of Absinthe, run it.

Follow the instructions it gives from there. You will need the wire that connects your iPhone/iPad to your computer's USB port, but don't plug it in until Absinthe asks you to.

Let me know if you have any problems.

If you want to save some time, you can skip the backup, but obviously you are taking on some additional risk.

Once you have jailbroken it, you will have a program called Cydia.

Cydia is where you download the various "jailbreak apps" -- underground apps that the Apple Store doesn't allow you to have. Some of them are free, while others cost money.

Here are some I suggest:

- SBSettings: A very useful app where you can slide your finger across the top of the screen and get access to all kinds of settings on your iPhone. Also very useful to free memory on your device without rebooting when it's acting sluggish.

- aTube or MxTube: Allows you to download videos from YouTube and save them on your device. This also gives you access to ALL of YouTube, and not the censored YouTube that Apple provides to you. It also lets you download the videos in full resolution, which Apple only normally lets you watch if you're on WiFi.

- Flashlight: If your iPhone has a flash with its camera, you can use this app to keep that light on for as long as you want. There are "approved" Flashlight apps in the app store, but this one is the brightest.

- User Agent Fake (UAFaker): Trick websites into believing you are on a computer browser instead of an iPhone, so you're not forced into terrible "mobile" versions of websites.

- TetherMe: This costs something like $5 or $10, but it's a one-time fee. It provides you with "tethering" ability -- being able to use your iPhone to provide your computer internet access. It can even do so wirelessly, making your iPhone act as a wireless router! This is especially useful if you are on the road or in a hotel. I know that AT&T charges you something ridiculous like $20/month to tether, and this allows you to dodge that charge. Be aware that tethering is a HUGE bandwidth hog, so be careful using it if you don't have unlimited data!