Internationalization is making software usable to different group of people in terms of language. A program supporting internationalization is capable of displaying its text in different languages. On GNU systems, gettext is used to internationalize software.
Obviously, you need to be able to display the language that is being displayed. This means you need the right fonts. In X this is simply a matter of installing more fonts. You should use unicode compatible fonts, as it supports every writing system in use, plus room for more.
To input in other languages, you can change your keymap to support another language. You can also use other programs to translate key presses for you.