The normal, the tangent, and the binormal are the three vectors at each vertex that define a coordinate frame on the surface of a geometric object. Conceptually, the U (tangent) and V (binormal) basis are supposed to be tangent to the surface, while the normal is perpendicular to the surface.
The tangent is a vector in space that roughly corresponds to the direction of the texture U-coordinate (first coordinate) increase over the mesh.
The binormal is a vector in space that roughly corresponds to the direction of the texture V-coordinate (second coordinate) increase over the mesh.
The tangent is represented by the red X-axis, the binormal by the green Y-axis, and the normal by the blue Z-axis.
All by themselves, normals do not provide enough information to properly define the surface of an object. Tangents and binormals are necessary for accurate normal mapping and other realtime per-pixel effects such as bump mapping.