DOM - это дерево, раньше, приходилось из-за изменения одного элемента, перерисовывать все дерево, от чего все дико тормозило, в то время как UI и изменения усложнялись. Реакт решает эту проблему, в этом его главное преимущество. VirtualDOM и реактивные изменения сначала над ним, а потом подмена.