Theorem: Fix a positive integer $m$. The following two conditions are equivalent:
(1) $L(1,\chi) \not= 0$ for all nontrivial Dirichlet characters $\chi \bmod m$.
(2) For all $a \in (\mathbf Z/m\mathbf Z)^\times$, the set of primes $\{p \equiv a \bmod m\}$ has Dirichlet density $1/\varphi(m)$.
Proof. When $m$ is $1$ or $2$, the condition (1) is vacuously true (there are no nontrivial Dirichlet characters mod $m$) and condition (2) is obvious, so from now on we can let $m \geq 3$.
The usual proof of Dirichlet's theorem shows (1) implies (2). It remains to show (2) implies (1).
For each Dirichlet character $\chi \bmod m$, $L(s,\chi)$ is analytic for ${\rm Re}(s) > 0$ except that $L(s,\mathbf 1_m)$ has a simple pole at $s = 1$, where $\mathbf 1_m$ denotes the trivial character mod $m$ (we have $L(s,\mathbf 1_m) = \zeta(s)\prod_{p \mid m} (1-1/p^s)$ and $\zeta(s)$ is analytic on ${\rm Re}(s) > 0$ except for a simple pole at $s = 1$).
Set
$$
r_\chi := {\rm ord}_{s=1}(L(s,\chi))
$$
so $r_{\mathbf 1_m} = -1$ (the simple pole at 1) and $r_\chi \geq 0$ for all nontrivial $\chi$. Condition (1) is equivalent to $r_\chi = 0$ for all nontrivial $\chi$, so we want to show condition (2) implies the numbers $r_\chi$ vanish for all nontrivial $\chi$.
For a Dirichlet character $\chi \bmod m$ and ${\rm Re}(s) > 1$, define
$$
\log L(s,\chi) := \sum_{p,k} \frac{\chi(p^k)}{kp^{ks}} =
\sum_p \frac{\chi(p)}{p^s} + \sum_{p,k\geq 2} \frac{\chi(p^k)}{kp^{ks}}.
$$
This is a logarithm of $L(s,\chi)$ (meaning the exponential of that series is $L(s,\chi)$. The second series on the right is absolutely convergent for ${\rm Re}(s) > 1/2$, with absolute value bounded by $\sum_{p,k \geq 2} 1/(kp^{k\sigma})$, so for $s > 1$ we can say
$$
\log L(s,\chi) = \sum_p \frac{\chi(p)}{p^s} + O(1),
$$
where the $O$-constant is $\sum_{p,k \geq 2} 1/(kp^k)$. In the usual proof of Dirichlet's theorem, for each $a \in (\mathbf Z/m\mathbf Z)^\times$ and $s > 1$ we write
$$
\sum_{p \equiv a \bmod m} \frac{1}{p^s} =
\frac{1}{\varphi(m)}\sum_{\chi \bmod m} \overline{\chi}(a)\left(\sum_p \frac{\chi(p)}{p^s}\right),
$$
so
$$
\sum_{p \equiv a \bmod m} \frac{1}{p^s} =
\frac{1}{\varphi(m)}\sum_{\chi \bmod m} \overline{\chi}(a)\log L(s,\chi) + O(1),
$$
where the $O$-constant on the right is an overall term (outside the sum).
Now let's bring in the order of vanishing $r_\chi$. For all $s$ near $1$, $L(s,\chi) = (s-1)^{r_\chi}f_\chi(s)$ where $f_\chi(s)$ is a holomorphic function in a neighborhood of $s = 1$ (in fact it is holomorphic on ${\rm Re}(s) > 0$, or even $\mathbf C$) and $f_\chi(1) \not= 0$. Therefore $f_\chi(s)$ has a logarithm around $s = 1$ (well-defined up to adding an integer multiple of $2\pi$), so for $s > 1$
$$
\log L(s,\chi) = r_\chi\log(s-1) + \ell_{f_\chi}(s)
$$
where $\ell_{f_\chi}(s)$ is a suitable logarithm of $f_\chi(s)$. Thus
$\log L(s,\chi) = r_\chi\log(s-1) + O(1)$ for $s$ near $1$ to the right, and plugging this into the formula for
$\sum_{p \equiv a \bmod m} 1/p^s$ we can say
$$
\sum_{p \equiv a \bmod m} \frac{1}{p^s} =
\frac{1}{\varphi(m)}\sum_{\chi \bmod m} \overline{\chi}(a)(r_\chi\log(s-1)) + O(1).
$$
Let's extract the term for the trivial character mod $m$: since
$r_{\mathbf 1_m} = -1$,
$$
\sum_{p \equiv a \bmod m} \frac{1}{p^s} = -\frac{1}{\varphi(m)}\log(s-1) +
\frac{1}{\varphi(m)}\left(\sum_{\chi \not= \mathbf 1_m} \overline{\chi}(a)r_\chi\right)\log(s-1) + O(1).
$$
In order to bring in a Dirichlet density,
we want to divide both sides by $\sum_p 1/p^s$ for
$s$ near $1$ to the right. For such $s$,
$$
\log \zeta(s) = -\log(s-1) + O(1)
$$
from the simple pole of $\zeta(s)$ at $s = 1$ and
$$
\log \zeta(s) = \sum_p \frac{1}{p^s} + O(1)
$$
from the Euler product for $\zeta(s)$ when $s > 1$. Therefore $\sum_p 1/p^s = -\log(s-1) + O(1)$ as $s \to 1^+$, so $-\log(s-1) \sim \sum_p 1/p^s$ as $s \to 1^+$.
Dividing through the last (big) formula above for $\sum_{p \equiv a \bmod m} 1/p^s$ by $\sum_p 1/p^s$ and letting $s \to 1^+$, we get
$$
\frac{\sum_{p \equiv a \bmod m} 1/p^s}{\sum_p 1/p^s} \to \frac{1}{\varphi(m)} -
\frac{1}{\varphi(m)}\left(\sum_{\chi \not= \mathbf 1_m} \overline{\chi}(a)r_\chi\right)
$$
as $s \to 1^+$. So we have shown, without assuming condition (1) in the theorem, that for all $a \in (\mathbf Z/m\mathbf Z)^\times$ the set of primes $\{p \equiv a \bmod m\}$ has Dirichlet density
$$
\frac{1}{\varphi(m)}\left(1 - \sum_{\chi \not= \mathbf 1_m} \overline{\chi}(a)r_\chi\right).
$$
Finally it is time to assume condition (2) in theorem, which implies
$$
\sum_{\chi \not= \mathbf 1_m} \overline{\chi}(a)r_\chi = 0
$$
for all $a \in (\mathbf Z/m\mathbf Z)^\times$.
When $\chi = \mathbf 1_m$, $\overline{\chi}(a)r_\chi = 1(-1) = -1$, so condition (2) implies
$$
\sum_{\chi} \overline{\chi}(a)r_\chi = -1
$$
for all $a \in (\mathbf Z/m\mathbf Z)^\times$,
where the sum runs over all Dirichlet characters mod $m$ (including the trivial character). We want to show the above equation, for all $a$, implies $r_\chi = 0$ for all nontrivial $\chi \bmod m$.
Using vectors indexed by the Dirichlet characters mod $m$, let
$\mathbf r_m = (r_\chi)_\chi$ and
$\mathbf v_a = (\chi(a))_\chi$ for each $a \in (\mathbf Z/m\mathbf Z)^\times$. The space of all complex vectors $\mathbf z = (z_\chi)_\chi$ has a Hermitian inner product
$\langle \mathbf z, \mathbf w\rangle = \frac{1}{\varphi(m)}\sum_{\chi} z_\chi\overline{w_\chi}$ for which the vectors $\mathbf v_a$ are an orthonormal basis by the usual orthogonality of Dirichlet characters mod $m$. The equation
$\sum_\chi \overline{\chi}(a)r_\chi = -1$ above says
$\langle \mathbf r_m,\mathbf v_a\rangle = -1/\varphi(m)$ for
all $a$ in $(\mathbf Z/m\mathbf Z)^\times$, so
$$
\mathbf r_m = \sum_{a} \langle \mathbf r_m,\mathbf v_a\rangle\mathbf v_a =
-\frac{1}{\varphi(m)}\sum_{a}\mathbf v_a.
$$
For nontrivial Dirichlet characters $\chi \bmod m$, the $\chi$-component of $\sum_{a} \mathbf v_a$ is
$\sum_a \chi(a)$, which is $0$ (the $\mathbf 1_m$-component is $\varphi(m)$, but that's irrelevant). Since
$\mathbf r_m$ has $\chi$-component $r_\chi := {\rm ord}_{s=1}L(s,\chi)$, we have
$r_\chi = 0$ for all nontrivial $\chi$, so
$L(1,\chi) \not= 0$ for all nontrivial $\chi$. QED
Best Answer
I like the proof by Paul Monsky: 'Simplifying the Proof of Dirichlet's Theorem' American Mathematical Monthly, Vol. 100 (1993), pp. 861-862.
Naturally this does maintain the distinction between real and complex as whatever you do, the complex case always seems to be easier as one would have two vanishing L-functions for the price of one.
I incorporated this argument into my note on a "real-variable" proof of Dirichlet's theorem at http://secamlocal.ex.ac.uk/people/staff/rjchapma/etc/dirichlet.pdf .
There are proofs, notably in Serre's Course in Arithmetic which claim to treat the real and complex case on the same footing. But this is an illusion; it pretends the complex case is as hard as the real case. Serre considers the product $\zeta_m(s)=\prod L(s,\chi)$ where $\chi$ ranges over the modulo $m$ Dirichlet characters. If one of the $L(1,\chi)$ vanishes then $\zeta_m(s)$ is bounded as $s\to 1$ and Serre obtains a contradiction by using Landau's theorem on the abscissa of convergence of a positive Dirichlet series. But all this subtlety is only needed for the case of real $\chi$. In the non-real case, at least two of the $L(1,\chi)$ vanish so that $\zeta_m(s)\to0$ as $s\to1$. But it's elementary that $\zeta_m(s)>1$ for real $s>1$ and the contradiction is immediate, without the need of Landau's subtle result.
Added (25/5/2010) I like the Ingham/Bateman method. It is superficially elegant, but as I said in the comments, it makes the complex case as hard as the real. Again it reduces to using Landau's result or a choice of other trickery. What one should look at is not $\zeta(s)^2L(s,\chi)L(s,\overline\chi)$ but $$G(s)=\zeta(s)^6 L(s,\chi)^4 L(s,\overline\chi)^4 L(s,\chi^2)L(s,\overline\chi^2)$$ (cf the famous proof of nonvanishing of $\zeta$ on $s=1+it$ by Mertens). Unless $\chi$ is real-valued this function will vanish at $s=1$ if $L(1,\chi)=0$. But one shows that $\log G(s)$ is a Dirichlet series with nonnegative coefficients and we get an immediate contradiction without any subtle lemmas. Again it shows that the real case is the hard one. For real $\chi$ then $G(s)=[\zeta(s)L(s,\chi)]^8$ while Ingham/Bateman would have us consider $[\zeta(s)L(s,\chi)]^2$. This leads us to the realization that for real $\chi$ we should look at $\zeta(s)L(s,\chi)$ which is the Dedekind zeta function of a quadratic field. (So if one is minded to prove the nonvanishing by showing that a Dedekind zeta function has a pole, quadratic fields suffice, and one needn't bother with cyclotomic fields).
But we can do more. Let $t$ be real and consider $$G_t(s)= \zeta(s)^6 L(s+it,\chi)^4 L(s-it,\overline\chi)^4 L(s+2it,\chi^2)L(s-2it,\overline\chi^2).$$ Unless both $t=0$ and $\chi$ is real, if $L(1+it,\chi)=0$ one gets a contradiction just as before. So the nonvanishing of any $L(s,\chi)$ on the line $1+it$ is easy except at $1$ for real $\chi$. This special case really does seem to be deeper!
Added (26/5/2010) The argument I outlined with the function $G_t(s)$ is well-known to extend to a proof for a zero-free region of the L-function to the left of the line $1+it$. At least it does when unless $t=0$ and $\chi$ is real-valued. In that case it breaks down and we get the phenomenon of the Siegel zero; the possible zero of $L(s,\chi)$ for $\chi$ real-valued, just to the left of $1$ on the real line. So the extra difficulty of proving $L(1,\chi)\ne0$ for $\chi$ real-valued is liked to the persistent intractability of showing that Siegel zeroes never exist.