[proofplan]
Write $U(1):=\{\lambda\in\mathbb C:|\lambda|=1\}$ for the circle Lie group, let $BU(1)$ denote its classifying space, and let $\mathbb{CP}^{\infty}$ denote infinite-dimensional complex [projective space](/page/Projective%20Space). We pass from a complex line bundle to its unit-frame principal $U(1)$-bundle, which does not change the classification problem. Principal $U(1)$-bundles over the paracompact smooth manifold $X$ are classified by homotopy classes of maps $X\to BU(1)$, and we use the standard homotopy equivalence $BU(1)\simeq \mathbb{CP}^{\infty}$. Since $\mathbb{CP}^{\infty}$ is an Eilenberg-Mac Lane space $K(\mathbb Z,2)$, representability of ordinary cohomology identifies homotopy classes $[X,\mathbb{CP}^{\infty}]$ with $H^2(X;\mathbb Z)$. The final point is normalization: under this chain of identifications, a classifying map sends a line bundle to the pullback of the universal first Chern class, which is exactly $c_1(L)$.
[/proofplan]
[step:Replace line bundles by principal $U(1)$-bundles]
Let $L\to X$ be a smooth complex line bundle. Since $X$ is paracompact, $L$ admits a smooth Hermitian metric. Define $P_L\to X$ to be the unit-frame bundle of $L$: the fiber over $x\in X$ is
\begin{align*}
(P_L)_x:=\{u:\mathbb C\to L_x \text{ complex-linear isometry}\}.
\end{align*}
The right action of $U(1)$ on $P_L$ is given by postcomposition with scalar multiplication on $\mathbb C$: if $\lambda\in U(1)$ and $u\in (P_L)_x$, then
\begin{align*}
u\cdot \lambda:=u\circ m_{\lambda},
\end{align*}
where $m_{\lambda}:\mathbb C\to\mathbb C$ is the map $z\mapsto \lambda z$. This makes $P_L\to X$ a smooth principal $U(1)$-bundle.
Conversely, if $P\to X$ is a smooth principal $U(1)$-bundle, define the associated complex line bundle
\begin{align*}
P\times_{U(1)}\mathbb C\to X
\end{align*}
using the standard representation $U(1)\to GL(1,\mathbb C)$, $\lambda\mapsto (z\mapsto \lambda z)$. These two constructions are inverse on isomorphism classes: a unit frame $u:\mathbb C\to L_x$ sends the class of $(u,z)$ to $u(z)$, giving a bundle isomorphism
\begin{align*}
P_L\times_{U(1)}\mathbb C\cong L,
\end{align*}
and the unit-frame bundle of $P\times_{U(1)}\mathbb C$ is naturally isomorphic to $P$ by sending $p\in P_x$ to the frame $z\mapsto [p,z]$.
Thus the set $\operatorname{Line}_{\mathbb C}(X)$ is identified with the set of isomorphism classes of smooth principal $U(1)$-bundles over $X$.
[guided]
The purpose of this step is to put line bundles into the form where the classifying-space theorem applies. That theorem classifies principal bundles, so we must verify that no information is lost by replacing a line bundle by its frame bundle.
Let $L\to X$ be a smooth complex line bundle. Because $X$ is paracompact, there exists a smooth Hermitian metric on $L$. With such a metric fixed, define $P_L\to X$ by declaring the fiber over $x\in X$ to be
\begin{align*}
(P_L)_x:=\{u:\mathbb C\to L_x \text{ complex-linear isometry}\}.
\end{align*}
Each element of $(P_L)_x$ is a choice of unit complex frame in the one-dimensional complex [vector space](/page/Vector%20Space) $L_x$. The circle group $U(1)$ acts on the right by
\begin{align*}
u\cdot \lambda:=u\circ m_{\lambda},
\end{align*}
where $m_{\lambda}:\mathbb C\to\mathbb C$ is the scalar multiplication map $z\mapsto \lambda z$. This action is free and transitive on each fiber, and the local trivializations of $L$ identify $P_L$ locally with $U\times U(1)$ for open sets $U\subset X$. Hence $P_L\to X$ is a smooth principal $U(1)$-bundle.
Now start with a smooth principal $U(1)$-bundle $P\to X$. Define a smooth complex line bundle by
\begin{align*}
P\times_{U(1)}\mathbb C\to X,
\end{align*}
where $U(1)$ acts on $\mathbb C$ by the standard representation $\lambda z$. The fiber over $x\in X$ is the quotient of $P_x\times \mathbb C$ by the [equivalence relation](/page/Equivalence%20Relation) generated by
\begin{align*}
(p\lambda,z)\sim (p,\lambda z).
\end{align*}
This quotient is a one-dimensional complex vector space.
The two constructions are inverse on isomorphism classes. For a line bundle $L$, define a map
\begin{align*}
P_L\times_{U(1)}\mathbb C &\to L
\end{align*}
\begin{align*}
[u,z] &\mapsto u(z).
\end{align*}
This is well-defined because $[u\lambda,z]=[u,\lambda z]$, and
\begin{align*}
(u\circ m_{\lambda})(z)=u(\lambda z).
\end{align*}
It is fiberwise complex-linear and bijective, hence a smooth complex line bundle isomorphism. Conversely, for a principal bundle $P$, the map sending $p\in P_x$ to the frame
\begin{align*}
\mathbb C &\to (P\times_{U(1)}\mathbb C)_x
\end{align*}
\begin{align*}
z &\mapsto [p,z]
\end{align*}
identifies $P$ with the unit-frame bundle of the associated line bundle. Therefore classifying smooth complex line bundles over $X$ is equivalent to classifying smooth principal $U(1)$-bundles over $X$.
[/guided]
[/step]
[step:Classify the associated principal bundle by a map into $BU(1)$]
Let $EU(1)\to BU(1)$ denote a universal principal $U(1)$-bundle. For topological spaces $Y$ and $Z$, write $[Y,Z]$ for the set of homotopy classes of continuous maps $Y\to Z$. Since $X$ is a paracompact smooth manifold, it is a paracompact [Hausdorff space](/page/Hausdorff%20Space). The smooth-topological comparison for Lie group bundles over paracompact smooth manifolds identifies smooth principal $U(1)$-bundles over $X$ up to smooth isomorphism with their underlying topological principal $U(1)$-bundles up to topological isomorphism. Therefore the standard classification theorem for principal bundles applies: isomorphism classes of smooth principal $U(1)$-bundles over $X$ are in natural bijection with
\begin{align*}
[X,BU(1)].
\end{align*}
Under this bijection, a principal bundle $P\to X$ corresponds to the homotopy class of a classifying map
\begin{align*}
f_P:X\to BU(1)
\end{align*}
such that
\begin{align*}
P\cong f_P^*EU(1).
\end{align*}
Therefore $\operatorname{Line}_{\mathbb C}(X)$ is identified with $[X,BU(1)]$.
[/step]
[step:Identify the classifying space with $\mathbb{CP}^{\infty}$ and cohomology]
Let $\mathbb C^\infty := \bigcup_{n=1}^\infty \mathbb C^n$ and $S^\infty := \bigcup_{n=1}^\infty S^{2n-1} \subset \mathbb C^\infty$, where $S^{2n-1} := \{z \in \mathbb C^n : |z| = 1\}$. Use the standard model
\begin{align*}
EU(1)=S^{\infty}\subset \mathbb C^{\infty}
\end{align*}
with its free right $U(1)$-action by scalar multiplication. Its quotient is
\begin{align*}
BU(1)=S^{\infty}/U(1)\cong \mathbb{CP}^{\infty}.
\end{align*}
Thus the preceding classification identifies line bundles over $X$ with homotopy classes
\begin{align*}
[X,\mathbb{CP}^{\infty}].
\end{align*}
The space $\mathbb{CP}^{\infty}$ is an Eilenberg-Mac Lane space $K(\mathbb Z,2)$. Since every smooth manifold has the homotopy type of a CW complex, the representability theorem for ordinary integral cohomology applies to $X$ and gives a natural bijection
\begin{align*}
[X,\mathbb{CP}^{\infty}]\cong H^2(X;\mathbb Z).
\end{align*}
More explicitly, if $\eta\in H^2(\mathbb{CP}^{\infty};\mathbb Z)$ denotes the universal degree-two class corresponding to the identity element under
\begin{align*}
[\mathbb{CP}^{\infty},\mathbb{CP}^{\infty}]\cong H^2(\mathbb{CP}^{\infty};\mathbb Z),
\end{align*}
then the homotopy class of a map $f:X\to \mathbb{CP}^{\infty}$ is sent to
\begin{align*}
f^*\eta\in H^2(X;\mathbb Z).
\end{align*}
[/step]
[step:Check that the represented cohomology class is the first Chern class]
Let $\gamma\to \mathbb{CP}^{\infty}$ denote the universal complex line bundle associated to the universal principal $U(1)$-bundle $S^{\infty}\to \mathbb{CP}^{\infty}$ through the standard representation of $U(1)$ on $\mathbb C$. The universal first Chern class is, by definition and normalization,
\begin{align*}
\eta:=c_1(\gamma)\in H^2(\mathbb{CP}^{\infty};\mathbb Z).
\end{align*}
This fixes the sign convention for the generator of $H^2(\mathbb{CP}^{\infty};\mathbb Z)$.
Let $L\to X$ be a smooth complex line bundle, let $P_L\to X$ be its unit-frame principal $U(1)$-bundle, and let
\begin{align*}
f_L:X\to \mathbb{CP}^{\infty}
\end{align*}
be a classifying map for $P_L$. By construction of the associated line bundle and the universal bundle,
\begin{align*}
L\cong f_L^*\gamma.
\end{align*}
Naturality of the first Chern class gives
\begin{align*}
c_1(L)=c_1(f_L^*\gamma)=f_L^*c_1(\gamma)=f_L^*\eta.
\end{align*}
Thus the cohomology class assigned to the classifying map $f_L$ under the representability bijection is exactly $c_1(L)$.
[/step]
[step:Conclude injectivity and surjectivity]
The assignment
\begin{align*}
[L]\longmapsto c_1(L)
\end{align*}
is the composite of the following bijections:
\begin{align*}
\operatorname{Line}_{\mathbb C}(X)\cong \{\text{principal }U(1)\text{-bundles over }X\}/\cong \cong [X,BU(1)]\cong [X,\mathbb{CP}^{\infty}]\cong H^2(X;\mathbb Z).
\end{align*}
The preceding step proves that this composite is precisely the first Chern class map. Therefore the first Chern class map is bijective. This proves the theorem.
[/step]