Viruses are highly evolvable biological entities capable of wreaking havoc on our society. Therefore, a better understanding of virus evolution is important for two main reasons: (i) it will lead to better management of current diseases and prevention of future ones, and (ii) it will contribute to a better understanding of evolutionary processes and their dynamics. In order to understand the evolution of viruses as a whole, it is necessary to consider different elements that shape virus evolution. In this review, we give a general overview of the most relevant factors that determine the evolution of plant viruses. We will focus on mutation rates, epistasis, robustness, recombination, genome organization, virus-host interactions, transmission, community interactions and abiotic factors. Since this review gives a summarized overview of the most important factors in virus evolution it can be a useful starting material for anyone interested in approaching (plant) virus evolution.