A mod, which is short for "modification", modifies the gameplay, for example by adding new features or altering the structure of the game (changing the resource/recipe system).It differs from a texturepack or a resource pack because it doesn't just change the look, sound or feel of the game but the actual game. Resource packs are often treated as mods as well because they have more features than texturepacks even though they technically aren't and because the official forums only differ between Mods and Texturepacks.
Mods are available in the mods section of the official forums
Characteristics of mods
There are various characteristics a mod can have. It is difficult to clearly characterise mods because many have multiple characteristics. Also, it is sometimes hard to determine characteristics because of subjective viewpoints.
Game structure altering
These mods change the structure of the game fundamentally, for example by changing all recipes or restructuring biomes. A subtype are cheat mods.
These mods add "features" to the game, like new blocks, items and armour. Most mods add features.
Practical mods try to add practical things into game. This does not mean cheats but rather recipes for items that don't have one or blocks that would be useful for building because of their texture (different colours).
Mods can also be purely decorative. This is the case when they add features that have no use for building and such and also "gag" mods, meaning mods that add something that is just funny but has no use otherwise (like a facebook "like" block).
"Huge" mods are mods that try to change everything fundamentally. It is not really a characteristic per se because it is just the combination of most other characteristics.
A full guide is available here: Installing Mods.
A full guide is available here: Creating Mods.