SuperOneClick. That's all there is to it. No jibberish jargon, checking of build versions, phone models, etc. SO EASY!
There's more information about it here on XDA, but this program worked a charm on my phone where the other methods weren't so "clean".
Make sure you've got:
- Microsoft .NET Framework 2.0+ or Mono v1.2.6+
- One of the supported operating systems (Vista+, Ubuntu Hardy+, Debian Lenny+)
- Phone on USB Debugging mode
- Computer detects your phone (may require USB drivers for your phone to be installed)
- Download "Mount /system (rw/ro)" app
- Download the package, extract. I tried this on v2.3.3.
- Run SuperOneClick.
- Plug in the phone
- Click root
- Wait for it to finish
- Unplug and reboot the phone manually
It couldn't be simpler!
*edit 25/6/2012* (Added following bits)
Now the last part.
You still won't be able to edit system files because the /system folder is mounted as read only. To change that to read/write, you'll need the "Mount /system (rw/ro)" app.
Start it up, enable write and away you go!