The 3 most popular DJ software programs are Serato DJ, Virtual DJ, and Traktor.
Serato DJ has a free (lite) version and a pro version. The pro version ships with many popular controllers. If you see a DJ controller that says “Serato” on it then you can rest assure that it will work very well with Serato DJ. The free lite version of Serato DJ can be used with or without a controller. More about Serato DJ here.
Virtual DJ can be used with or without a DJ controller. Right now you can download a home version of Virtual DJ for free. If you use it in stand-alone mode it’s helpful to have an external sound card (assuming your laptop only has one sound card). Read more about Virtual DJ here.
Traktor is another popular DJ controller. Traktor allows users to customize the software interface. More about Traktor here.