Ordbog over det danske sprog,
http://ordnet.dk/ods (senest redigeret i 1950) har følgende definitionen:
Legal: "som er ell. foregaar i overensstemmelse med ell. i henhold til lovens bestemmelser"
Legitim "som stemmer med landets love og bestaaende retsordning"
Så det lyder som om ordene har helt identisk betydning.
Jeg kan dog komme på sammenhænge hvor der bestemt er betydningsforskel:
Et illegitimt barn er et barn der er avlet udenfor ægteskabet. Det er/var ikke i overensstemmelse med gammeldags moralnormer, men det er bestemt ikke ulovligt efter landets almindelige verdslige love. Hvad et ulovligt barn så er, er svært at forestille sig. Måske et barn der er kidnappet som baby og opdraget af kidnapperen?
Men bemærk her: 'illegitimt barn' er en fast vending. Derfor kan 'illegitim' antage sin egen specielle betydning i denne sammenhæng.