Internationalization (i18n)
The process of making a program localizable. This would cover work to allow for different fonts and charactersets to be displayed correctly. To allow for scripts that run from right-to-left, etc. This work is usually done once for a language, once the toolkits and programs support a language the internationalization work is usually complete.
Localization (l10n)
The process of taking an existing program or operating system and making it work in your language. This would include translating: interface and documentation, creating a locale file and the creation of fonts. It would not include changing the widget set or program operation to cater for your language, that work would fall under internationalization.
Source: Read the docs