Compilation.
A program called compiler reads your program written in a high level language like C/C++ and then translates the whole program it into a new program in machine language. Then the computer executes this machine code.
Interpretation.
A program called an interpreter looks at each line of your program one after another, executes it, and then goes onto the next line.
In short, compiler converts whole program before execution starts whereas interpreter converts the code line by line and executes it.
An Analogy : Compilation is like converting a French document in to an English document using a translator and then trying to understand it. Whereas interpretation is looking at each word in French-English dictionary, understand this word and repeating this procedure for all the words.