warum sollte das nicht gehen?
Selbst "normale" Computer machen nix wirklich gleichzeitig, sondern auch nur viele Sachen sehr schnell hintereinander.
Wenn Du nicht mit "delay()" arbeitest, sondern mit "millis()" (siehe Blink without delay) sollte das kein großes Problem sein, sowas zu bauen.
Der ATMEGA läuft mit 16MHz und damit werden "fast" 16 Mio Operationen pro Sekunden ausgeführt (vermutlich gibt es ein par Opeartionen die mehr als einen Takt benötigen).
Du kannst Dir ja mal den Spass machen und in der loop() Schleife nur den aktuellen Wert von millis(), bzw. micros(); auf die serielle Schnittstelle ausgeben lassen.
void loop() {
Serial.println(micros());
}
Damit solltest Du schon ein Geführ bekommen wie schnell Dein Arduino durch den Code rennt.
Der Trick ist halt, keinen "blockierenden" Code zu schreiben, dann gehen jede Menge Sachen "fast" gleichzeitig.