Cryogen,
A Soft-PLC is a program written for use on a PC. It typically requires a special card that can read Inputs and control Outputs. However, it can also be set-up that communication to various Input/Ouput Control Modules are handled by the Serial or Parallel Port.
My experience involves using special I/O cards with programs, that I developed, written in "C". As I recall (several years ago) each card was capable of handling 64-I/O. Each individual I/O point could be designated as an Input or an Output.
The basic scheme is to write a program and then install that program as a TSR (Terminate and Stay Resident) program. The same scheme is used by the Mouse, the Keyboard, and the Clock-Handler in the PLC. This occurs at the most primitive levels of the PC. The Soft-PLC program is then "called" by an "Interrupt" that is generated by the Clock-Handler. The Clock-Handler is the fastest aspect of any PC. That speed depends on the particular CPU and Motherboard. The older PC's did "steps" at least at the micro-second level. These days... it's probably at the pico-second level or maybe even smaller.
If you know what the maximum time is for the particular application, including ALL of the time consuming over-head issues, then you can reduce the timing of your "Call" to the "Interrupt".
However, while the Inputs operate independently, it takes a certain amount of time for those Inputs to react to field conditions. This means, if you can call your interrupt every 10-micro-seconds, and yet it takes a particular input 15-micro-seconds to respond to the actual condition... you won't know that the input has changed state until the next call.
Then there is the issue of feed-back from remote controllers. This feed-back is subject to the timing of the communication routine and all of the assorted over-head issues.
All in all, falling back on the PLCnet Standard answer... "It depends!"