Skin

A skin refers to the texture that is placed onto a player model or mob.

The skin is divided into areas that act as the surface area of the character (For example, there's the front head area, left leg area, etc.). A skin will only allow solid color; transparency is not allowed on the skin file except on the second layer, which is transparent by default; playing offline, pixels can be left free resulting in "holes" in the skin. The second layer can be used to give the character glasses, hats, or other accessories (even a bigger head).

World textures
A skin can also refer to other textures in the game, such as block textures, item sprites, mob skins etc. A list of these can be found here.

It is worth noting that Pigmen, Zombie, and Zombie Pigmen mobs can use typical player skins (and vice-versa). Skeleton mobs can use typical player skins as well, but keep in mind that they have their skinny arms and legs. (If a skeleton mob skin is used as a player's skin, their legs and arms will not be skinny.)

In order to use the player skin for Pigmen, Zombie, and Zombie Pigmen, you must align it to the correct place on the .png or the texture will be broken.

PC
A player can only change their character's skin if they have purchased Minecraft. This is done on the Profile page by uploading a valid  image file, which will then replace the default skin.

Skins also have the option of having 3 or 4 pixel wide arms, which can be changed on the profile page as well.

The  and   files in minecraft.jar can also be changed and replaced via a resource pack, but the effects will only be visible to players using the resource pack, and will affect all players with the default skin.

Console Edition
There are currently 8 default skin types (with the exception of the skin packs) all of which appear to have Steve's face, but wearing different outfits and skin colors. The following are available through split screen and online only. The skins are available to be chosen in the 'Change Skin' area of Help & Options. The Console Edition allows transparent skins, because you can't create your own skins. This prevents issues with completely transparent skin users "haunting" other players. You can add custom skins to the console editions but that would mean you would need to hack into it and that would void the console's warranty.

Default:

Skin packs
Skin Packs are available in the Console Edition as downloadable content. Skin Packs add additional skins that players may choose from along with the 8 default skins packaged with the game. They often feature characters from other video games, alongside original designs.

Creating a skin
Many players want to have a new look, something which describes them. While you can always search the internet for a previously made skin, many players prefer to create their own.

A custom skin is a great way to personalize your player model and can be done either by using a variety of community-made skin editors, or by editing the "steve.png" file manually with an image editor like Photoshop, GIMP, Paint.net or similar image editors. The "steve.png" file can be downloaded from here. When editing the "steve.png" file manually, be sure to keep the original image dimensions and make the background of the skin (the unused pixels) completely transparent. Otherwise, Minecraft may fail to recognize the skin as intended.

Alternatively, some people find it easier to use a program, either downloadable or in-browser, which will allow them to have a live view of their character on a three dimensional model as they are editing the skin. For example, a program called Skincraft will further assist players by providing them with a wide variety of pre-made selections (such as hats, boots, sweaters, etc.), to give the skin creator exactly what they want, even if the creator has little to no artistic skill.

After making a custom skin, either by using a skin editor or by editing the "steve.png" file directly, one will still need to upload the .png file at the Profile page of www.minecraft.net before the skin is applied. Once completed, start up Minecraft and enjoy your new skin! Other players in multiplayer will also be able to see your skin. Note that you will not be able to see your custom skin if you are not logged in or if playing offline.

Note: the 1.8 templates can be used for pre-1.8 skins on the skin server. Only the top half of the image is used, e.g. not the individual arms and legs on the bottom, and no overlay on any layer except the head. If the skins is in resource pack for 1.7, you must use the old system exactly.

There can be up to 3.06×1023,581 unique Minecraft skins.