These are instructions on how to jailbreak your iPhone 3GS on the 4.2.1 firmware using RedSn0w for Windows. The Mac version of this tutorial is here.
Do not upgrade to iOS 4.2.1 if you need the unlock as there is no unlock for iOS 4.2.1’s baseband yet.
If you have an iPhone 3GS with the new bootrom you will only be able to perform a tethered jailbreak at this time. This means you will need Redsn0w’s assistance to boot into your jailbroken device.
Create a folder on your desktop called Pwnage
Download RedSn0w from here and place it in the Pwnage folder. Likewise, download the latest 4.2.1 firmware from below and place it in the same folder.
4.2.1 (3GS): iPhone2,1_4.2.1_8C148a_Restore.ipsw
Navigate to the Pwnage folder on your desktop and select the 4.2.1 firmware ipsw. Click the Choosebutton to continue.
Once iTunes has finished updating your iPhone to the desired firmware open the Pwnage folder on your desktop and launch the redsn0w application from the redsn0w folder we extracted earlier.
You will be asked if this device is a newer fixed model. If yours is then click the Yes button; otherwise, click the No button. At this time you can only perform an untethered jailbreak on the older model.
Verbose boot displays detailed information on boot of your device and is generally only needed by developers and advanced users.
Make sure Cydia is selected. For this tutorial we will also select Custom boot logo and Custom recovery logo.
*Remember the rules for boot logos are: RGB or Grayscale format with Alpha channel and dimension below 320×480. If you would like to use the iClarified ones they can be found here: Boot Logo,Recovery Logo
RedSn0w will now guide you through the steps to get into DFU mode. You can find more help with DFU mode here
Once this is complete you will be notified that RedSn0w is done. Click the Finish button. When your iPhone finishes rebooting (5 minutes or so) it will be jailbroken with Cydia on the SpringBoard.
If you have a newer iPhone 3GS and performed a tethered jailbreak you can use Redsn0w to help you boot back into your jailbroken device. Simply select Just boot tethered right now from the options window and click Next.
*As usual a big thanks to the iPhone Dev-Team for their hard work and contribution to the iPhone community.