Can Arduino be used as real-time PC I/O interface?

I’m wanting to use the Arduino as a I/O interface with my computer to control a device via the PWM outputs. Specifically, I’m looking to write a program that will give commands to control a series of simple motors through the Arduino device.

Am I correct in that I’ll be able to do this with Arduino? I’m 99% sure this device will work, but I wanted to ask anyways in case I’ve missed something.

The examples for interfacing with processing seem to show that it is possible to read data from the Arduino in but is it also possible to control motor devices connected to the Arduino from a program running on the computer?

Ive done the unipolar stepper motor tutorial / guide which is working fine but I would now like to have the computer send a series of instructions through the Arduino to the motors. Is this possible?

Ive written some drawing programs in Processing that I would like to modify to send output to two stepper motors controlling an X, Y axis plotter I have constructed.

Ive been searching around some more now and I think the way to do this is using;

Serial Communication

Used for communication between the Arduino board and a computer or other devices. This communication happens via the Arduino board’s serial or USB connection and on digital pins 0 (RX) and 1 (TX). Thus, if you use these functions, you cannot also use pins 0 and 1 for digital i/o.

Serial.begin(speed)
Serial.available()
Serial.read()
Serial.print(data)
Serial.println(data)

this stuff to read signals sent from the serial library that is available for Processing. Does that make sense?