They are both basically the same thing. Unless you have to get dual processors (which currently would be required if you want more than 4 cores) I wouldn't because it costs much more to get started.
For 1 application to use multiple cores it needs to be threaded which requires it to be written/compiled differently than a single threaded application. However, having multiple cores still gives an advantage because you can run 2 single threaded applications instead of 1, which you do all the time anyways with all of the background tasks in an operating system and anything else running.