There might be no "best" software overall, the answer will depend on your needs and skills. For my own purpose I find "R" very usefull. You can download R at
http://cran.r-project.org/index.html
A free handbook explaining the use of R for epi applications is available at
For basic and intermediate epidemiological analysis, EpiInfo is enough, and much friendlier than R. It is also good for data entry and for building maps. For complex statistics or complex data handling R is far better.
I dito R. If you're new to R try it with R Studio and install the package R commander, this gives you an environment similar to SPSS or STATA and is much more userfriendly. (I assume here that you might not be too keen on command line programming in the first instance.)