I find USB to be really flaky, and as far as I can tell it cannot be relied upon for timing sensitive tasks. Often my mouse won't work until I unplug and replug it, that wouldn't do for a CNC machine that has just commanded maximum current in the Z-axis motor, then bores a hole into the table because the USB needs re-pluging.
PCI might be a reasonable interface except that you have to pay money to join their "secret club" to get a proper device ID, and the standard is expensive (though some thoughtful people seem to have forgotten to take it off their web servers...) I would rather not donate my time to creating devices that promote or support standards that cost money.
If it were not disappearing, I would say that ISA bus is a good solution because the bandwidth is sufficient, and the latency is low (I'm assuming the software is not typical modern bloatware), and it's as reliable as anything could be on an ordinary PC, and widely understood, and easy to implement. If you have money to spend, you could buy an industrial PC, these have some version of the ISA bus with a different connector, and will be around for some time to come. Otherwise you could visit a dumpster and stock up on ISA-motherboards to keep your setup running as long as you want.
I guess that you are probably already aware of the open-source "EMC" software for interpreting G-codes. I haven't tried it but you might find it useful.
Chris