Multithreading is different from multi-core processing.
PureBasic has native support for the Win32 API so to answer your question, yes you can do multicore programming. But don't expect it to be easy.
Threads on the other hand are very easy to implement. Threads allow you to do multiple things at the same time without locking up your interface. For example, if you have to load a very large file the program will freeze until it's finished. If you unload this processing to a threads then this won't happen.
The real power is designating different actions to dedicated threads. One thread to control physics, one for AI, one for controls, and one for the main loop.
All of this is possible using PureGDK!