After reading the SQL Reference manual, in the notes section of the CREATE TABLE statement, the difference is this. They perform the same function, specifically that when a RI is attempted to be deleted, it is blocked (and returns an error) if there is a child still pointing to it. The difference is when the constraint is enforced. "RESTRICT" is checked BEFORE all other constraints.
"NO ACTION" is checked AFTER all other constraints.
HTH
Andy