win32-codec or something similar will have codecs in the form of windows *.dll files that don't have a native version for Linux. Depends on which distro your using on were to obtain the files.
If your using Ubuntu there are directions in their Wiki and FAQ pages on what to do. Debian you can use apt-get.org to find third party repositories you can add to your source list. Mandrake, Suse, etc you can usually find rpm files that contain the special windows codecs. Gentoo has it, and if your using Fedora you can check out Dag's third party repositories on how to install it (read his FAQ page, its important).
If that is to much or you can't find a proper file or whatnot then you can download the codecs from mplayers codec pages
http://www1.mplayerhq.hu/DOCS/HTML/en/codecs.html untar the package and stick them in /usr/lib/win32 and generally most media players will find them.
Also in some cases, like Debian, Fedora, Ubuntu, you have to obtain stuff like linux native LAME encoders from third party places due to legal restrictions. There are howtos and instructions on how to do this.
A AVI file, like stated above, can hold anything. Generally any type of file that is supported
Generally I like
VLC. It plays most everything.