There are three levels of support for internationalization that you should consider.
The add-in runs as expected in a foreign language, but all supporting text (names, help etc) remains in the author's language.
See the topic Ensuring stable behavior for instructions on how to ensure this level of support.
Almost all XLL+ sample projects satisfy level 1 support criteria.
The add-in's supporting text is available in a limited number of languages, fully under the control of the author of the add-in.
Techniques for achieving this level of support are discussed in the following topics:
See Conversion of an existing project for instructions on converting a single-language add-in to support multiple languages.
The sample project Localized (Single DLL) supports level 2 criteria.
The add-in's supporting text is available in any number of languages, and support for new languages can be added in new modules by third parties, without any impact on the core add-in, or on any other language modules.
See Deployment for a discussion of the differences between this type of support and support for a self-contained add-in with multi-language support.
The sample project Localized (Multiple DLLs) supports level 3 criteria.