If you setup a DAQmx task for on demand mode it'll be software timed. Windows is a non-deterministic operating system, which means that your task will be at the mercy of the operating systems and any other processes that request system resources. Delays could potentially be the result of using on Demand.
If you board has hardware timing you'll be ablle to setup the acquisition for continuous or finite mode, which will give you much more accurate timing.
Elijah Kerry
NI Director, Software Community