Genetic programming is an evolutionary algorithm-based methodology inspired by biological evolution to find computer programs that perform a user-defined task. It evolves programs through operations analogous to biological mutation and crossover, iteratively improving them based on a fitness function.