PS2 Emulation is a complex task, far worse than emulating a console from the previous generation (PlayStation1, N64, Saturn), simply due to the CPU power required to get 'playable' speeds from a PS2 game under emulation. Whilst speed can be improved via various 'recompilers' (eeREC and vuREC, Emotion Engine recompiler and Vector Unit CPU recompiler respectively), you will still need the latest and most powerfull machine you can get your hands on to even break the 30 FPS mark.
PCSX2 is a PlayStation 2 emulator for Windows and Linux, started by the same team that brought you PCSX (a Sony PlayStation 1 emulator). The PCSX2 project attempts to allow PS2 code to be executed on your computer, thus meaning you can put a PS2 DVD or CD into your computers drive, and boot it up!
The PCSX2 project is Open Source (GPL) and keeps an active
SVN (SubVersion). PCSX2 is a complex program, but thanks to it's plugin system and GUI, not impossible to use, even if you are relatively new to emulation. PCSX2 does however require a real PS2 BIOS to run. However, you must obtain this from your own PS2, as the BIOS binary is Â@copy;SONY and cannot be distributed with PCSX2 as this would be highly illegal. This is perhaps the only technical thing you will have to do to get PCSX2 running games, but there are guides and tools out there to help you do this.