Let $x$ and $y$ be signals of $N$ samples each, numbered as $x(0),\ldots,x(N-1)$. Then their DFTs are $X$ and $Y$, which also have $N$ entries each:
\begin{eqnarray}
X(k) &=& \sum_{n=0}^{N-1}x(n)e^{-2\pi i kn/N},\\
Y(k) &=& \sum_{m=0}^{N-1}y(m)e^{-2\pi i k m/N},
\end{eqnarray}
where the indices run from $0$ to $N-1$.
The $k^{\textrm{th}}$ entry of the entry-by-entry product of $X$ and $Y$ is
\begin{equation}
\begin{split}
X(k)Y(k) ~=& \left(\sum_{n=0}^{N-1}x(n)e^{-2\pi i kn/N}\right)\left(\sum_{m=0}^{N-1}y(m)e^{-2\pi i k m/N}\right)\\
~=& \sum_{n=0}^{N-1}\sum_{m=0}^{N-1}x(n)y(m)e^{-2\pi i k(n+m)/N}
\end{split}
\end{equation}
Now we consider the $\ell^{\textrm{th}}$ entry of the IDFT of this entry-by-entry product:
\begin{equation}
\begin{split}
\mathsf{IDFT}(XY)(\ell) ~=& \frac{1}{N}\sum_{k=0}^{N-1}X(k)Y(k)e^{2\pi i\ell k/N }\\
~=& \frac{1}{N}\sum_{k=0}^{N-1}\left[\sum_{n=0}^{N-1}\sum_{m=0}^{N-1}x(n)y(m)e^{-2\pi i k(n+m)/N}\right]e^{2\pi i\ell k/N }\\
~=& \frac{1}{N}\sum_{n=0}^{N-1}\sum_{m=0}^{N-1}x(n)y(m)\sum_{k=0}^{N-1}e^{-2\pi i k(n+m-\ell)/N}
\end{split}
\end{equation}
The sum over $k$ is equal to 0 unless
\begin{equation}
n+m-\ell=0~\textrm{mod}~N~~~(m=\ell-n~\textrm{mod}~N),
\end{equation}
in which case it is equal to $N$:
\begin{equation}
\sum_{k=0}^{N-1}e^{-2\pi i k(n+m-\ell)/N} = N\delta_{m,\ell-n~\textrm{mod}~N},
\end{equation}
where $\delta_{a,b}$ is the Kronecker delta. One intuitive way to see this is to see that
$\bullet$ if the exponent is not 0, we are adding all $N$ of the $N^{\textrm{th}}$ roots of unity (view them in the complex plane), which will cancel one another out when added; As noted by the OP, my struck-through claim is true for all $n$, $m$, and $\ell$ only if $N$ is prime. The correct proof is to note that if $e^{-2\pi i(n+m-\ell)/N}\neq 1$, then
\begin{equation}
\begin{split}
\sum_{k=0}^{N-1}e^{-2\pi i k(n+m-\ell)/N} &=~ \sum_{k=0}^{N-1}\left(e^{-2\pi i (n+m-\ell)/N}\right)^k\\
&=~\frac{ 1- \left(e^{-2\pi i (n+m-\ell)/N}\right)^N}{1 - e^{-2\pi i (n+m-\ell)/N}}\\
&=~\frac{ 1- e^{N\times(-2\pi i (n+m-\ell)/N)}}{1 - e^{-2\pi i (n+m-\ell)/N}}\\
&=~\frac{ 1- e^{-2\pi i (n+m-\ell)}}{1 - e^{-2\pi i (n+m-\ell)/N}}\\
&=~\frac{ 1- 1}{1 - e^{-2\pi i (n+m-\ell)/N}} ~~=~~ 0.
\end{split}
\end{equation}
$\bullet$ if the exponent is 0, then we are adding 1 $N$ times.
(Another not as intuitive away can be found in this video.)
So far, we have
\begin{equation}
\begin{split}
\mathsf{IDFT}(XY)(\ell) ~=& \frac{1}{N}\sum_{n=0}^{N-1}\sum_{m=0}^{N-1}x(n)y(m)N\delta_{m,\ell-n~\textrm{mod}~N}\\
~=& \sum_{n=0}^{N-1}\sum_{m=0}^{N-1}x(n)y(m)\delta_{m,\ell-n~\textrm{mod}~N}
\end{split}
\end{equation}
When we perform the sum over $m$, the only nonzero term is the one for which $m=\ell-n~\textrm{mod}~N$, so
\begin{equation}
\begin{split}
\mathsf{IDFT}(XY)(\ell) ~=& \sum_{n=0}^{N-1}x(n)y(\ell -n~\textrm{mod}~N).
\end{split}
\end{equation}
The expression on the right-hand side is the $\ell^{\textrm{th}}$ entry of the circular convolution of $x$ and $y$.
\begin{equation}
\mathsf{IDFT}(XY)(\ell) = (x\circledast y)(\ell),
\end{equation}
so $\mathsf{IDFT}(XY) = x\circledast y$.