In-memory tree reflecting the current UI, rebuilt from application state on every change. Central to reactive frameworks like React and Ember: when state updates, the virtual DOM is re-derived and reconciled against the real DOM so developers don't manage individual component updates.