I font Latin Modern OpenType sono di default per XeLaTeX, ma devi specificare le default font options prima di \font spec, e non hai nesusn bisogno di specificare né il main font, nè il sans font né il mono font; naturalmente se vuoi delle caratteristiche speciale per una sola di queste famigli devi specificarle come opzione per lo specifico comando \set…font con cui lo selezioni.
Documentazione: texdoc fontspec
Dopo aver letto la documentazione saprai anche come trovare i nome die font da specificare nei vari comandi di impostazione o nei comandi \newfontfamily che potresti voler specificare per scopi speciali, come per esempio quando vuoi usare un certo font solo per una certa lingua; oppure quando con una certa lingua vuoi delle specifiche speciali da applicare solo a quella lingua.
Puoi fare acrobazie che con pdfLaTeX e i font Type 1 non ti puoi sognare nemmeno.
XeLaTeX presenta degli altri inconvenienti rispetto a pdfLATeX, ma permette di giocare con i font in modo eccellente.
Per unire le due cose puoi provare ad usare LuaLaTeX, con u motore che è un opgrade molto avanzato di pdftex, che contiene anche l’inteprete del linguaggio di scripting Lua, che può fare altre magie ancora, maneggia direttamente i font OpenType come XeLATeX, e produc direttamente l’uscita in formto PDF, senza le trasformazioni che XeLaTeX è costretto a fare dietro le quinte.
Naturalmente questi vantaggi si pagano: LuaLaTeX su documenti che ho composto con tutti e tre i programmi è cirac tre volte più lento di XeLaTeX il quale a sua volta è circa tre volta più lento di pdfLaTeX (queste differenze sono stiate, non sono misurate con il cronometro, ma danno un’idea).