Summary at ScriptSource
For a concise summary of what IPA is and what's available, you may want to start here:
Fonts, Keyboard, and reference materials are located at sil.org
Several good unicode fonts that support IPA, and keyboards for typing them, are available at:
The free keyboard solution there (created using MSKLC) is very similar to the Keyman keyboard (which is free too). The main difference is that MSKLC only supports deadkeys, so this keyboard inverts the keystroke order (e.g. =e instead of e=).
Editable and other-language quick-reference materials are located here
At the site above, several pages of documentation are provided with each keyboard, and also one-page quick reference in English from this site. (A page that visually teaches both IPA and the keystrokes.) To edit that page, or to get it in Indonesian or Spanish, you can use the files below.
There are also face diagrams (filled and blank) that can be used in a phonetics course (sample appended).
These charts were all created using drawing objects in a single MS Word 2003 document that has layers for English, Spanish (not yet translated), and Indonesian thus far. (It might be good to redo them in a true vector-based image editing tool with layers, provided it had good support for these IPA characters and fonts.) Both sets of keystrokes are included, but the Keyman strokes are hidden by default.
The source file (requires the Gentium Plus Compact font):
For serious use, download the files above. For a quick preview, here are some images: