[proofplan]
The forward implication from discrepancy to uniform distribution is immediate because the discrepancy is the supremum of all interval-counting errors. For the converse, assume the interval counts converge for every half-open interval and first obtain uniform control over a finite mesh of intervals. Then approximate an arbitrary interval from inside and outside by mesh intervals; the mesh endpoint error is controlled by the mesh size, while the counting error on mesh intervals is uniformly small because there are only finitely many of them. Letting first $N\to\infty$ and then the mesh size tend to $0$ gives $D_N(x_1,\dots,x_N)\to 0$.
[/proofplan]
[step:Bound each fixed interval count by the discrepancy]
Assume that
\begin{align*}
\lim_{N\to\infty}D_N(x_1,\dots,x_N)=0.
\end{align*}
Let $[a,b)\subset [0,1)$ be a half-open interval. For each $N\in\mathbb N$, define
\begin{align*}
A_N([a,b)):=\#\{1\le n\le N:\{x_n\}\in [a,b)\}.
\end{align*}
By the definition of $D_N(x_1,\dots,x_N)$ as a supremum over all half-open intervals in $[0,1)$, we have
\begin{align*}
\left|\frac{A_N([a,b))}{N}-(b-a)\right|\le D_N(x_1,\dots,x_N).
\end{align*}
The right-hand side tends to $0$, so
\begin{align*}
\lim_{N\to\infty}\frac{A_N([a,b))}{N}=b-a.
\end{align*}
Since $[a,b)$ was arbitrary, $(x_n)_{n\ge 1}$ is uniformly distributed modulo $1$.
[/step]
[step:Obtain uniform counting control on a finite mesh]
Conversely, assume that $(x_n)_{n\ge 1}$ is uniformly distributed modulo $1$. Fix an integer $M\ge 1$. For integers $0\le r\le s\le M$, define the mesh interval
\begin{align*}
I_{r,s}:=\left[\frac{r}{M},\frac{s}{M}\right).
\end{align*}
There are finitely many such intervals. By uniform distribution modulo $1$, for every pair $0\le r\le s\le M$,
\begin{align*}
\lim_{N\to\infty}\frac{1}{N}\#\{1\le n\le N:\{x_n\}\in I_{r,s}\}=\frac{s-r}{M}.
\end{align*}
Therefore, for every $\varepsilon>0$ there exists $N_0=N_0(M,\varepsilon)\in\mathbb N$ such that, for all $N\ge N_0$ and all $0\le r\le s\le M$,
\begin{align*}
\left|\frac{1}{N}\#\{1\le n\le N:\{x_n\}\in I_{r,s}\}-\frac{s-r}{M}\right|\le \varepsilon.
\end{align*}
[guided]
We need a statement that is stronger than convergence on one interval at a time. For a fixed mesh size $M$, however, there are only finitely many mesh intervals
\begin{align*}
I_{r,s}:=\left[\frac{r}{M},\frac{s}{M}\right)
\end{align*}
with $0\le r\le s\le M$. Uniform distribution modulo $1$ says that each one satisfies
\begin{align*}
\lim_{N\to\infty}\frac{1}{N}\#\{1\le n\le N:\{x_n\}\in I_{r,s}\}=\frac{s-r}{M}.
\end{align*}
The reason this becomes uniform over the mesh is finiteness. Given $\varepsilon>0$, each fixed pair $(r,s)$ has some threshold $N_{r,s}$ after which its counting error is at most $\varepsilon$. Since the set of pairs $(r,s)$ with $0\le r\le s\le M$ is finite, define $N_0$ to be the maximum of these finitely many thresholds. Then for every $N\ge N_0$ and every mesh interval $I_{r,s}$,
\begin{align*}
\left|\frac{1}{N}\#\{1\le n\le N:\{x_n\}\in I_{r,s}\}-\frac{s-r}{M}\right|\le \varepsilon.
\end{align*}
This is the key compactness-in-finite-form step: pointwise convergence over finitely many mesh intervals becomes simultaneous convergence over all of them.
[/guided]
[/step]
[step:Approximate an arbitrary interval by mesh intervals]
Fix $M\ge 1$, $\varepsilon>0$, and $N\ge N_0(M,\varepsilon)$ as in the previous step. Let $[a,b)\subset [0,1)$ be arbitrary. Choose integers $r_-,r_+,s_-,s_+$ with
\begin{align*}
\frac{r_-}{M}\le a<\frac{r_-+1}{M},\qquad \frac{r_+ -1}{M}<a\le \frac{r_+}{M},
\end{align*}
and
\begin{align*}
\frac{s_-}{M}\le b<\frac{s_-+1}{M},\qquad \frac{s_+ -1}{M}<b\le \frac{s_+}{M}.
\end{align*}
Equivalently, $r_-=\lfloor Ma\rfloor$, $r_+=\lceil Ma\rceil$, $s_-=\lfloor Mb\rfloor$, and $s_+=\lceil Mb\rceil$.
Define the outer mesh interval
\begin{align*}
I^+:=\left[\frac{r_-}{M},\frac{s_+}{M}\right)
\end{align*}
and define the inner mesh interval
\begin{align*}
I^-:=\left[\frac{r_+}{M},\frac{s_-}{M}\right)
\end{align*}
if $r_+\le s_-$, while if $r_+>s_-$ we set $I^-:=\varnothing$ and regard its length and count as $0$. Then
\begin{align*}
I^-\subset [a,b)\subset I^+.
\end{align*}
For a half-open interval $J=[u,v)\subset [0,1)$, write $|J|:=v-u$ for its length, and set $|\varnothing|:=0$. Moreover,
\begin{align*}
|I^+|-(b-a)\le \frac{2}{M}
\end{align*}
and
\begin{align*}
(b-a)-|I^-|\le \frac{2}{M}.
\end{align*}
Let
\begin{align*}
A_N(J):=\#\{1\le n\le N:\{x_n\}\in J\}
\end{align*}
for every half-open interval $J\subset [0,1)$, and set $A_N(\varnothing):=0$. Since $I^-\subset [a,b)\subset I^+$, monotonicity of cardinality gives
\begin{align*}
A_N(I^-)\le A_N([a,b))\le A_N(I^+).
\end{align*}
The finite-mesh estimate gives
\begin{align*}
\frac{A_N(I^+)}{N}\le |I^+|+\varepsilon
\end{align*}
and, because either $I^-$ is a mesh interval or $I^-=\varnothing$,
\begin{align*}
\frac{A_N(I^-)}{N}\ge |I^-|-\varepsilon.
\end{align*}
Hence
\begin{align*}
\frac{A_N([a,b))}{N}-(b-a)\le \varepsilon+\frac{2}{M}
\end{align*}
and
\begin{align*}
(b-a)-\frac{A_N([a,b))}{N}\le \varepsilon+\frac{2}{M}.
\end{align*}
Therefore
\begin{align*}
\left|\frac{A_N([a,b))}{N}-(b-a)\right|\le \varepsilon+\frac{2}{M}.
\end{align*}
[/step]
[step:Take the supremum over intervals and send the mesh size to infinity]
The estimate in the previous step holds for every half-open interval $[a,b)\subset [0,1)$ whenever $N\ge N_0(M,\varepsilon)$. Taking the supremum over all $0\le a\le b\le 1$ gives
\begin{align*}
D_N(x_1,\dots,x_N)\le \varepsilon+\frac{2}{M}
\end{align*}
for all $N\ge N_0(M,\varepsilon)$. Thus
\begin{align*}
\limsup_{N\to\infty}D_N(x_1,\dots,x_N)\le \varepsilon+\frac{2}{M}.
\end{align*}
Since $\varepsilon>0$ was arbitrary, we obtain
\begin{align*}
\limsup_{N\to\infty}D_N(x_1,\dots,x_N)\le \frac{2}{M}.
\end{align*}
Letting $M\to\infty$ gives
\begin{align*}
\limsup_{N\to\infty}D_N(x_1,\dots,x_N)\le 0.
\end{align*}
Because $D_N(x_1,\dots,x_N)\ge 0$ by definition, this implies
\begin{align*}
\lim_{N\to\infty}D_N(x_1,\dots,x_N)=0.
\end{align*}
This proves the converse implication and completes the proof.
[/step]