Native Instruments is huge name in the music software business, mostly because of their virtual instruments (computer-based instrument simulators), but also for programs such as Traktor Pro 2, a virtual DJ mixing console extraordinaire. Traktor Pro comes in various editions and prices; we looked at the $229 edition, which has a free, time-per-use-limited demo.
Traktor 2's interface mimics the turntables, sample/loop players, and mixing controls that are the heart of the DJ's craft. However, instead of a stack of albums by the side, there's a list of tracks, loops and samples below that you select and assign to one of the turntables for playback. I've just described the default interface; the GUI is highly configurable with four main layouts that you can easily switch between without interrupting playback in any way. Traktor 2 also supports a number of control surfaces including the company's own KONTROL S4.
One quirk: Traktor Pro didn't support the simple USB audio speakers that I use on one of my test beds. Other than that, my hands-on was a lot of fun. I'm no DJ, however, I understand the concepts involved and found the program generally easy to use--once I'd spent considerable time with the manual.
Which brings me to my only gripe about Traktor 2 Pro, and it's a minor one: This program is very complex, particularly in the areas of setup and configuration. The complexity is a byproduct of power and features, but you'll definitely be spending some time with the docs to harness the full power of the software. If you're truly interested in DJ'ing, that's really not an issue. Also, there are a plethora of video tutorials available that make a great shopping resource as well.
Traktor 2 is available in a wide variety of price points and feature sets from $119 to $999 with the S4 hardware controller. You can find the comparison chart at Native Instruments' site. There's a lot of DJ software out there, and a lot of its significantly cheaper than Traktor, but you won't find any with more features, FX, or better hardware support. It has features galore, and I've only scratched the surface here (pun intended).
Note: The demo version of Traktor 2 is fully functional, but times out after 30 minutes of use. You must restart the program to use it again.