A vector is simply a 1-dimensional array of numbers that often refer to coordinates, or directions. The theory of vectors is best left to wikipedia.
Implementing a vector class in C# is pretty easy. The vector is stored as an array within the class. The constructor can either set this array directly, or initialises it to a particular size.
The Zero() function sets the entire vector to 0.
The Abs() function calculates the absolute value of the vector, which is the square root of the sum of the squares of the components of the vector.
The Dot() function returns the dot product of the vector, with another vector. The dot product is the sum of the products of each component in the vectors.
The Scale() function scales the vector by the scaling factor supplied.
The + and - operators are overloaded to make it easy to add and subtract vectors.
Each component of first vector is added (or subtracted) to the equivalent component of the second vector, and then the resulting vector is returned.