I18n - Internationalization - Providing some kind of framework so that you can easily swap out strings, graphics, sounds and other resources and generally handling different conventions of communication.
L10n - Localization - The process of creating a bunch of strings, graphics, sounds etc. so that you can target a specific nationality, language or region.
G11n - Globalization - Doing both Internationalization and Localization steps :)
There are many methods and frameworks that support the 'strings' part of these processes and they usually involve using unicode. The other parts are usually handled by creating resource files with a bunch of graphics and sounds in them. Depending on the framework you use, the strings may be stored here too. I find Qt has an excellent system for handling strings for I18n.