What is the no free lunch theorem?
The No Free Lunch theorem (NFL) was established to debunk claims of the form:


  My optimisation strategy X is always best.


In particular, such claims arose in the area of genetic/evolutionary algorithms.

The statement is, roughly: every optimisation strategy performs badly on many problems. Therefore, there can be no always-best strategy and your claim about X is wrong.