Quantum computation requires qubits that can be coupled and realized in a scalable manner, together with universal and high-fidelity one- and two-qubit logic gates cite{DiVincenzo2000, Loss1998}. Strong effort across several fields have led to an impressive array of qubit realizations, including trapped ions cite{Brown2011}, superconducting circuits cite{Barends2014}, single photonscite{Kok2007}, single defects or atoms in diamond cite{Waldherr2014, Dolde2014} and silicon cite{Muhonen2014}, and semiconductor quantum dots cite{Veldhorst2014}, all with single qubit fidelities exceeding the stringent thresholds required for fault-tolerant quantum computing cite{Fowler2012}. Despite this, high-fidelity two-qubit gates in the solid-state that can be manufactured using standard lithographic techniques have so far been limited to superconducting qubits cite{Barends2014}, as semiconductor systems have suffered from difficulties in coupling qubits and dephasing cite{Nowack2011, Brunner2011, Shulman2012}. Here, we show that these issues can be eliminated altogether using single spins in isotopically enriched siliconcite{Itoh2014} by demonstrating single- and two-qubit operations in a quantum dot system using the exchange interaction, as envisaged in the original Loss-DiVincenzo proposal cite{Loss1998}. We realize CNOT gates via either controlled rotation (CROT) or controlled phase (CZ) operations combined with single-qubit operations. Direct gate-voltage control provides single-qubit addressability, together with a switchable exchange interaction that is employed in the two-qubit CZ gate. The speed of the two-qubit CZ operations is controlled electrically via the detuning energy and we find that over 100 two-qubit gates can be performed within a two-qubit coherence time of 8 textmu s, thereby satisfying the criteria required for scalable quantum computation.