[proofplan]
We compute the inner product $\langle \operatorname{Ind}_H^G \psi, \operatorname{Ind}_H^G \psi \rangle_G$ and show it equals $1$ exactly when $\psi$ differs from each conjugate $\psi_g$ for $g \in G \setminus H$. The strategy: by [Frobenius reciprocity](/theorems/2449), $\langle \operatorname{Ind}_H^G \psi, \operatorname{Ind}_H^G \psi \rangle_G = \langle \psi, \operatorname{Res}_H^G \operatorname{Ind}_H^G \psi \rangle_H$. The restriction is decomposed by [Mackey's restriction formula](/theorems/2456); since $H \trianglelefteq G$, every double coset $H \backslash G / H$ is a single coset $gH$, and the intersection $H_g = gHg^{-1} \cap H$ equals $H$ itself. The inner product reduces to a sum over coset representatives $g$ of $\langle \psi, \psi_g \rangle_H$, which equals the number of $g$ with $\psi = \psi_g$. The [irreducibility criterion](/theorems/2426) then yields the result.
[/proofplan]
[step:Reduce $\langle \operatorname{Ind}_H^G \psi, \operatorname{Ind}_H^G \psi \rangle_G$ to an inner product over $H$ via Frobenius reciprocity]
Let $W$ be a representation of $H$ affording $\psi$. By [Frobenius reciprocity](/theorems/2449) applied to the character $\psi$ of $H$ and the character $\operatorname{Ind}_H^G \psi$ of $G$ (regarded once as the character of an induced representation, once as a character of $G$),
\begin{align*}
\langle \operatorname{Ind}_H^G \psi, \operatorname{Ind}_H^G \psi \rangle_G = \langle \psi, \operatorname{Res}_H^G \operatorname{Ind}_H^G \psi \rangle_H.
\end{align*}
We now compute the right-hand side.
[/step]
[step:Apply Mackey's restriction formula with $K = H$, using that $H$ is normal]
We invoke [Mackey's restriction formula](/theorems/2456) with $K = H$. Mackey's formula requires a set $\mathcal{S}$ of double-coset representatives in $H \backslash G / H$. Since $H \trianglelefteq G$, conjugation by any element of $G$ preserves $H$, hence
\begin{align*}
HgH = H \cdot gH = (gH) \cdot \text{(something in $H$)} = gH \cdot g^{-1}Hg = gH \cdot H = gH
\end{align*}
— more directly, $HgH = gg^{-1}HgH = g(g^{-1}Hg)H = gHH = gH$ using $g^{-1}Hg = H$ by normality. So every double coset $HgH$ is a single left coset $gH$, and we may take $\mathcal{S}$ to be a complete set of left coset representatives $\{g_1, \ldots, g_n\}$ for $G/H$, where $n = [G:H]$.
For each such $g \in \mathcal{S}$, the Mackey subgroup is
\begin{align*}
H_g := gHg^{-1} \cap H = H \cap H = H,
\end{align*}
again using $gHg^{-1} = H$ by normality. The conjugate representation $W_g$ has underlying space $W$ and $H$-action
\begin{align*}
\rho_g: H &\to \operatorname{GL}(W), \\
h &\mapsto \rho(g^{-1} h g),
\end{align*}
which is a genuine representation of $H$ (the same domain $H$, not a smaller subgroup). Its character is the conjugate character $\psi_g(h) = \psi(g^{-1} h g)$.
By [Mackey's restriction formula](/theorems/2456),
\begin{align*}
\operatorname{Res}_H^G \operatorname{Ind}_H^G W \cong \bigoplus_{g \in \mathcal{S}} \operatorname{Ind}_H^H W_g = \bigoplus_{g \in \mathcal{S}} W_g,
\end{align*}
since $\operatorname{Ind}_H^H$ is the identity functor (induction from a group to itself does nothing). On characters,
\begin{align*}
\operatorname{Res}_H^G \operatorname{Ind}_H^G \psi = \sum_{g \in \mathcal{S}} \psi_g.
\end{align*}
[guided]
The whole point of normality is collapse: when $H \trianglelefteq G$, the Mackey-formula apparatus simplifies dramatically. The double cosets reduce to single cosets ($HgH = gH$), and the Mackey subgroups all collapse to $H$ itself ($H_g = H$). What survives is just the family of conjugate representations $\{W_g : g \in \mathcal{S}\}$, each on the same underlying space $W$ but with the $H$-action twisted by $g$.
This gives a clean conjugation action: the elements of $G/H$ permute (the isomorphism classes of) the conjugate representations of $H$. The orbit of $W$ under this action is $\{W_g : g \in G/H\}$, and the question of whether $\operatorname{Ind}_H^G W$ is irreducible turns out (as we will see) to be exactly the question of whether the orbit is "free" enough — whether $W$ is genuinely different from each non-trivial conjugate.
[/guided]
[/step]
[step:Express $\langle \psi, \operatorname{Res}_H^G \operatorname{Ind}_H^G \psi \rangle_H$ as $|\{g \in \mathcal{S} : \psi = \psi_g\}|$]
Substituting the decomposition from Step 2 into the result of Step 1,
\begin{align*}
\langle \operatorname{Ind}_H^G \psi, \operatorname{Ind}_H^G \psi \rangle_G &= \langle \psi, \sum_{g \in \mathcal{S}} \psi_g \rangle_H = \sum_{g \in \mathcal{S}} \langle \psi, \psi_g \rangle_H,
\end{align*}
using bilinearity of the inner product.
For each $g \in \mathcal{S}$, the conjugate character $\psi_g$ is irreducible: indeed, $W_g$ has the same underlying vector space as $W$, and $\rho_g(h) = \rho(g^{-1} h g)$ defines a representation isomorphic to $W$ as an abstract vector space with $H$-action — the conjugation map $h \mapsto g^{-1} h g$ is an automorphism of $H$ (because $H$ is normal in $G$), so $W_g$ is just $W$ with $H$ relabelled by an automorphism. Concretely, $W_g$ has a well-defined irreducible $H$-action: irreducibility of $\rho$ implies irreducibility of $\rho_g$, since a $\rho_g$-invariant subspace is a $\rho$-invariant subspace of $W$.
By the [orthogonality of irreducible characters](/theorems/2430) (row orthogonality), for irreducible characters $\psi$ and $\psi_g$ of $H$,
\begin{align*}
\langle \psi, \psi_g \rangle_H = \begin{cases} 1 & \text{if } \psi = \psi_g, \\ 0 & \text{otherwise.} \end{cases}
\end{align*}
Hence
\begin{align*}
\langle \operatorname{Ind}_H^G \psi, \operatorname{Ind}_H^G \psi \rangle_G = |\{g \in \mathcal{S} : \psi_g = \psi\}|.
\end{align*}
[/step]
[step:Conclude via the irreducibility criterion]
Note that the identity coset $1 \cdot H = H$ corresponds to $g = 1 \in \mathcal{S}$ (taking $1$ as the representative of the trivial coset), and $\psi_1 = \psi$ trivially. So the count $|\{g \in \mathcal{S} : \psi_g = \psi\}|$ is at least $1$.
Moreover, the property $\psi_g = \psi$ depends only on the coset $gH$ and not on the representative $g$: indeed, for $h \in H$, $\psi_{gh}(x) = \psi((gh)^{-1} x (gh)) = \psi(h^{-1}(g^{-1} x g)h) = \psi(g^{-1} x g) = \psi_g(x)$, using that $\psi$ is a class function on $H$ and $h^{-1}(g^{-1} x g) h$ is $H$-conjugate to $g^{-1} x g$. So we may unambiguously speak of the conjugate $\psi_g$ for $g \in G \setminus H$ (independent of the coset representative chosen).
By the [irreducibility criterion](/theorems/2426), $\operatorname{Ind}_H^G \psi$ is irreducible if and only if $\langle \operatorname{Ind}_H^G \psi, \operatorname{Ind}_H^G \psi \rangle_G = 1$. From Step 3,
\begin{align*}
\langle \operatorname{Ind}_H^G \psi, \operatorname{Ind}_H^G \psi \rangle_G = 1 \quad \iff \quad |\{g \in \mathcal{S} : \psi_g = \psi\}| = 1.
\end{align*}
The right-hand side holds iff the only $g \in \mathcal{S}$ with $\psi_g = \psi$ is $g = 1$ (the representative of $H$ itself), iff $\psi_g \neq \psi$ for all $g \in G \setminus H$.
Therefore $\operatorname{Ind}_H^G \psi$ is irreducible if and only if $\psi \neq \psi_g$ for every $g \in G \setminus H$.
[/step]