#37#32 Spanish lo es tanto un argentino como un mejicano como un español. Spaniard lo es sólo un español. O sea, dependiendo de lo que quieras decir, son ambas correctas o no.
Si quieres decir que tu lengua es el español, con que digas que eres Spanish ya tienes suficiente. Posiblemente darán por sentado que eres mexicano.
Si quieres dejar claro que eres español, mejor que digas Spaniard.
Evidentemente, esto en los EEUU. Por Europa, si dices Spanish, por defecto entenderán español.
Uno es un adjetivo y otro es un sustantivo.
Sirve con muchas pero no con todas.
Soy inglés: I'm English | I'm an Englishman
Soy escocés: I'm Scottish | I'm a Scotsman
Soy español: I'm Spanish | I'm a Spaniard
etc etc. Muchas otras no tienen. Ruso, Italiano, Canada, etc.