[proofplan]
The key tool is the **averaging operator**: given any linear map $\varphi: V \to V'$, the operator $\widetilde{\varphi} := \frac{1}{|G|} \sum_g \rho'(g^{-1}) \varphi\, \rho(g)$ is a $G$-homomorphism by construction. [Schur's Lemma](/theorems/2414) then dictates its form: zero when $\rho \not\cong \rho'$, and a scalar multiple of the identity when $\rho = \rho'$. We choose $\varphi$ to be an elementary matrix unit $E_{\alpha\beta}$ and read off matrix entries of $\widetilde{\varphi}$. The non-isomorphic case $(\widetilde{\varphi} = 0)$ kills the inner product term by term. The isomorphic case fixes the scalar via the trace, and a careful sum produces $\langle \chi, \chi \rangle = 1$. Throughout, we expand $\langle \chi, \chi' \rangle$ using $\chi'(g^{-1}) = \overline{\chi'(g)}$ (a consequence of $\rho'$ being a finite-image complex representation, so eigenvalues are roots of unity).
[/proofplan]
[step:Set up matrix coordinates and rewrite the inner product as a double matrix sum]
Let $\rho: G \to \operatorname{GL}(V)$ and $\rho': G \to \operatorname{GL}(V')$ be irreducible complex representations of $G$ with characters $\chi$ and $\chi'$, and dimensions $n = \dim V$ and $n' = \dim V'$. Fix a basis $\{e_1, \ldots, e_n\}$ of $V$ and a basis $\{e'_1, \ldots, e'_{n'}\}$ of $V'$. Denote the matrices of $\rho(g)$ and $\rho'(g)$ in these bases by $R(g) \in \mathbb{C}^{n \times n}$ and $R'(g) \in \mathbb{C}^{n' \times n'}$.
The character $\chi(g) = \operatorname{tr} \rho(g) = \sum_j R(g)_{jj}$, and similarly $\chi'(g) = \sum_i R'(g)_{ii}$.
Since $G$ is finite, every $g \in G$ has finite order, so the eigenvalues of $\rho'(g)$ are roots of unity. In particular, $\rho'(g)^{-1} = \rho'(g^{-1})$, and $\overline{\chi'(g)} = \chi'(g^{-1})$ (because the eigenvalues of $\rho'(g^{-1})$ are the inverses of those of $\rho'(g)$, and inverse equals conjugate for roots of unity).
The inner product expands as
\begin{align*}
\langle \chi', \chi \rangle &= \frac{1}{|G|} \sum_{g \in G} \overline{\chi'(g)}\, \chi(g) \\
&= \frac{1}{|G|} \sum_{g \in G} \chi'(g^{-1})\, \chi(g) \\
&= \frac{1}{|G|} \sum_{g \in G} \sum_{i=1}^{n'} \sum_{j=1}^n R'(g^{-1})_{ii}\, R(g)_{jj}.
\end{align*}
[guided]
Our goal is to compute $\langle \chi', \chi \rangle$ by reducing it to sums of matrix entries of $\rho$ and $\rho'$, and then to apply Schur's lemma.
The first manoeuvre is to convert the complex conjugate $\overline{\chi'(g)}$ into $\chi'(g^{-1})$. Why does this hold? Because $G$ is finite, every $g$ has finite order $m$, so $\rho'(g)^m = I$ and the eigenvalues of $\rho'(g)$ are $m$-th roots of unity. For any root of unity $\zeta$, $\overline{\zeta} = \zeta^{-1}$. The eigenvalues of $\rho'(g^{-1})$ are the inverses of the eigenvalues of $\rho'(g)$, hence the conjugates. Taking traces:
\begin{align*}
\overline{\chi'(g)} = \overline{\sum_i \lambda_i} = \sum_i \overline{\lambda_i} = \sum_i \lambda_i^{-1} = \chi'(g^{-1}).
\end{align*}
This is Property 5 of [Elementary Properties of Characters](/theorems/2421).
The second manoeuvre is to expand each character as a sum of diagonal matrix entries. This breaks the inner product into a double sum over basis indices.
[/guided]
[/step]
[step:Construct the averaging operator and prove it is a $G$-homomorphism]
For any linear map $\varphi: V \to V'$, define
\begin{align*}
\widetilde{\varphi}: V &\to V', \\
v &\mapsto \frac{1}{|G|} \sum_{g \in G} \rho'(g^{-1})\, \varphi\, \rho(g)\, v.
\end{align*}
[claim:$\widetilde{\varphi}$ is a $G$-homomorphism, i.e. $\rho'(h) \widetilde{\varphi} = \widetilde{\varphi} \rho(h)$ for every $h \in G$]
[proof]
Fix $h \in G$. Compute, using $\rho'(h)\rho'(g^{-1}) = \rho'(hg^{-1}) = \rho'((gh^{-1})^{-1})$:
\begin{align*}
\rho'(h)\widetilde{\varphi}\, v &= \frac{1}{|G|} \sum_{g \in G} \rho'(h)\rho'(g^{-1}) \varphi\, \rho(g) v \\
&= \frac{1}{|G|} \sum_{g \in G} \rho'((gh^{-1})^{-1}) \varphi\, \rho(g) v.
\end{align*}
Substitute $g' = g h^{-1}$, equivalently $g = g' h$. As $g$ ranges over $G$, so does $g'$:
\begin{align*}
&= \frac{1}{|G|} \sum_{g' \in G} \rho'(g'^{-1}) \varphi\, \rho(g' h) v \\
&= \frac{1}{|G|} \sum_{g' \in G} \rho'(g'^{-1}) \varphi\, \rho(g')\, \rho(h) v \\
&= \widetilde{\varphi}\, \rho(h) v.
\end{align*}
Hence $\rho'(h) \widetilde{\varphi} = \widetilde{\varphi} \rho(h)$ for every $h$, so $\widetilde{\varphi}$ is a $G$-homomorphism.
[/proof]
[/claim]
[guided]
The averaging operator $\widetilde{\varphi}$ is the standard device for converting an arbitrary linear map between representations into a $G$-equivariant one. Conjugating $\varphi$ by $g$ on each side and averaging over $g \in G$ symmetrises $\varphi$ with respect to the $G$-action.
The verification of equivariance is a relabelling argument: the substitution $g' = g h^{-1}$ permutes the summation index, preserving the sum, and pulls a factor of $\rho(h)$ outside on the right (and an associated $\rho'(h)$ on the left, which absorbs into $\rho'(g'^{-1})$).
Once we have a $G$-homomorphism $\widetilde{\varphi}: V \to V'$ between irreducibles, [Schur's Lemma](/theorems/2414) takes over: $\widetilde{\varphi}$ is either zero or an isomorphism, and in the latter case, when $V = V'$, it is a scalar multiple of $\operatorname{id}_V$.
[/guided]
[/step]
[step:Read off the $(i,j)$-entry of $\widetilde{\varphi}$ in matrix coordinates]
Compute the matrix of $\widetilde{\varphi}$ with respect to the bases $\{e_j\}$ of $V$ and $\{e'_i\}$ of $V'$. Denote it by $\widetilde{\Phi}$, and let $\Phi$ be the matrix of $\varphi$ in these bases. Then
\begin{align*}
\widetilde{\Phi} = \frac{1}{|G|} \sum_{g \in G} R'(g^{-1})\, \Phi\, R(g),
\end{align*}
and the $(i, j)$-entry is
\begin{align*}
\widetilde{\Phi}_{ij} = \frac{1}{|G|} \sum_{g \in G} \sum_{\alpha=1}^{n'} \sum_{\beta=1}^n R'(g^{-1})_{i\alpha}\, \Phi_{\alpha\beta}\, R(g)_{\beta j}.
\end{align*}
In particular, take $\Phi = E_{\alpha\beta}$ (the elementary matrix with $1$ in position $(\alpha, \beta)$ and $0$ elsewhere). Denote by $\widetilde{E}_{\alpha\beta}$ the corresponding averaged matrix. The $(i, j)$-entry simplifies:
\begin{align*}
(\widetilde{E}_{\alpha\beta})_{ij} = \frac{1}{|G|} \sum_{g \in G} R'(g^{-1})_{i\alpha}\, R(g)_{\beta j}.
\end{align*}
[guided]
Working in coordinates: the matrix of the averaged operator is the average of the conjugated matrices,
\begin{align*}
\widetilde{\Phi} = \frac{1}{|G|} \sum_g R'(g^{-1}) \Phi R(g).
\end{align*}
We will choose $\varphi$ to be the elementary operator $\varepsilon_{\alpha\beta}: V \to V'$ with matrix $E_{\alpha\beta}$ — the matrix that is $1$ in position $(\alpha, \beta)$ and zero elsewhere. The product $E_{\alpha\beta} R(g)$ has its $(\alpha, j)$-entry equal to $R(g)_{\beta j}$ and other rows zero. Multiplying by $R'(g^{-1})$ on the left, the $(i, j)$-entry picks up only column $\alpha$:
\begin{align*}
(R'(g^{-1}) E_{\alpha\beta} R(g))_{ij} = R'(g^{-1})_{i\alpha} \cdot R(g)_{\beta j}.
\end{align*}
Averaging over $g$ gives the formula in the step. This is a precise expression for the matrix coefficients of $\widetilde{\varepsilon}_{\alpha\beta}$ as $G$-averages of products of matrix coefficients of $\rho'$ and $\rho$.
[/guided]
[/step]
[step:Case 1 — $\rho$ and $\rho'$ non-isomorphic: every averaged operator vanishes]
Suppose $\rho \not\cong \rho'$ as $G$-representations.
By Step 2, $\widetilde{\varphi}: V \to V'$ is a $G$-homomorphism for every linear $\varphi$. Apply [Schur's Lemma](/theorems/2414): a $G$-homomorphism between non-isomorphic irreducibles is zero. We verify the hypotheses: $\rho$ and $\rho'$ are both irreducible (by assumption), and they are not isomorphic (the case assumption). Hence $\widetilde{\varphi} = 0$ for every $\varphi$.
In particular, choosing $\varphi = \varepsilon_{\alpha\beta}$ (so $\Phi = E_{\alpha\beta}$) for each $\alpha \in \{1, \ldots, n'\}$ and $\beta \in \{1, \ldots, n\}$, the matrix $\widetilde{E}_{\alpha\beta} = 0$, so every entry vanishes:
\begin{align*}
\frac{1}{|G|} \sum_{g \in G} R'(g^{-1})_{i\alpha}\, R(g)_{\beta j} = 0 \quad \text{for all } i, j, \alpha, \beta.
\end{align*}
Now compute $\langle \chi', \chi \rangle$ from Step 1. Setting $\alpha = i$ and $\beta = j$ in the vanishing identity (legal because $i, \alpha$ range over $\{1, \ldots, n'\}$ and $j, \beta$ range over $\{1, \ldots, n\}$):
\begin{align*}
\frac{1}{|G|} \sum_{g \in G} R'(g^{-1})_{ii}\, R(g)_{jj} = 0 \quad \text{for all } i, j.
\end{align*}
Sum over $i$ and $j$:
\begin{align*}
\langle \chi', \chi \rangle = \sum_{i=1}^{n'} \sum_{j=1}^n \frac{1}{|G|} \sum_{g \in G} R'(g^{-1})_{ii}\, R(g)_{jj} = \sum_{i,j} 0 = 0.
\end{align*}
Equivalently, $\langle \chi, \chi' \rangle = \overline{\langle \chi', \chi \rangle} = 0$ (the conjugate of $0$).
[guided]
Schur's lemma is the substantive ingredient. We have an arbitrary linear $\varphi: V \to V'$, and we average it to get a $G$-homomorphism $\widetilde{\varphi}: V \to V'$. The hypotheses of [Schur's Lemma](/theorems/2414) are: $V$ and $V'$ are irreducible $G$-representations, which they are by assumption. The conclusion is that any $G$-homomorphism is either zero or an isomorphism. Since we are in the non-isomorphic case, no isomorphism exists, so $\widetilde{\varphi}$ must be zero.
This holds for **every** choice of $\varphi$. We exploit the freedom to choose $\varphi = \varepsilon_{\alpha\beta}$, the elementary operator with matrix $E_{\alpha\beta}$. From Step 3, this gives the vanishing of the matrix coefficient
\begin{align*}
\frac{1}{|G|} \sum_g R'(g^{-1})_{i\alpha} R(g)_{\beta j} = 0
\end{align*}
for all $i, j, \alpha, \beta$. Setting the "outside" indices $\alpha = i$ and $\beta = j$ gives the diagonal version, which is exactly the term appearing in the inner product expansion of Step 1. Summing over $i, j$ recovers $\langle \chi', \chi \rangle = 0$.
[/guided]
[/step]
[step:Case 2 — $\rho \cong \rho'$: Schur fixes $\widetilde{\varphi}$ as a scalar via trace]
Suppose $\rho \cong \rho'$. Choose a $G$-equivariant isomorphism and use it to identify $V' = V$ and $\rho' = \rho$, so $R'(g) = R(g)$ and $n' = n$. The character of $\rho'$ equals $\chi$.
For any linear $\varphi: V \to V$, the averaged operator $\widetilde{\varphi}: V \to V$ is a $G$-endomorphism (Step 2 with $V' = V$). Apply [Schur's Lemma](/theorems/2414): for an irreducible $V$ over the algebraically closed field $\mathbb{C}$, every $G$-endomorphism is a scalar multiple of the identity. Hypothesis check: $V$ is irreducible (by assumption) and $\mathbb{C}$ is algebraically closed. Hence
\begin{align*}
\widetilde{\varphi} = \lambda(\varphi)\, \operatorname{id}_V \quad \text{for some } \lambda(\varphi) \in \mathbb{C}.
\end{align*}
To compute $\lambda(\varphi)$, take the trace:
\begin{align*}
\operatorname{tr} \widetilde{\varphi} = \frac{1}{|G|} \sum_{g \in G} \operatorname{tr}(\rho(g^{-1}) \varphi\, \rho(g)) = \frac{1}{|G|} \sum_{g \in G} \operatorname{tr}(\varphi) = \operatorname{tr}(\varphi).
\end{align*}
The middle step uses cyclic invariance of the trace: $\operatorname{tr}(\rho(g^{-1}) \varphi\, \rho(g)) = \operatorname{tr}(\rho(g) \rho(g^{-1}) \varphi) = \operatorname{tr}(\varphi)$. On the other hand, $\operatorname{tr}(\lambda \operatorname{id}_V) = n \lambda$, so $\lambda(\varphi) = \operatorname{tr}(\varphi) / n$.
Now choose $\varphi = \varepsilon_{\alpha\beta}$, the linear map with matrix $E_{\alpha\beta}$. Then $\operatorname{tr}(\varepsilon_{\alpha\beta}) = \operatorname{tr}(E_{\alpha\beta}) = \delta_{\alpha\beta}$, and
\begin{align*}
\widetilde{\varepsilon}_{\alpha\beta} = \frac{\delta_{\alpha\beta}}{n}\, \operatorname{id}_V,
\end{align*}
whose $(i, j)$-entry is $\frac{\delta_{\alpha\beta}}{n}\, \delta_{ij}$. From Step 3,
\begin{align*}
\frac{1}{|G|} \sum_{g \in G} R(g^{-1})_{i\alpha}\, R(g)_{\beta j} = \frac{\delta_{\alpha\beta}\, \delta_{ij}}{n}.
\end{align*}
[guided]
In the isomorphic case, identify $V' = V$ and $\rho' = \rho$. The averaged map $\widetilde{\varphi}$ is a $G$-endomorphism of $V$, an irreducible representation. The strong form of [Schur's Lemma](/theorems/2414) (over an algebraically closed field — here $\mathbb{C}$, which is algebraically closed) says every such endomorphism is a scalar multiple of the identity. Concretely:
\begin{align*}
\widetilde{\varphi} = \lambda(\varphi) \operatorname{id}_V.
\end{align*}
We pin down the scalar $\lambda(\varphi)$ by the trace. The trace of the conjugate $\rho(g^{-1}) \varphi \rho(g)$ equals $\operatorname{tr}(\varphi)$ by cyclic invariance, so averaging over $g$ gives $\operatorname{tr}(\widetilde{\varphi}) = \operatorname{tr}(\varphi)$. On the other hand, the trace of $\lambda \operatorname{id}_V$ is $n\lambda$. Equating,
\begin{align*}
\lambda(\varphi) = \frac{\operatorname{tr}(\varphi)}{n}.
\end{align*}
For $\varphi = \varepsilon_{\alpha\beta}$ (matrix $E_{\alpha\beta}$), the trace is $\delta_{\alpha\beta}$ — the matrix has a single nonzero entry, located on the diagonal iff $\alpha = \beta$.
Reading the $(i, j)$-entry of $\widetilde{\varepsilon}_{\alpha\beta} = \frac{\delta_{\alpha\beta}}{n} \operatorname{id}_V$ gives
\begin{align*}
\frac{1}{|G|} \sum_g R(g^{-1})_{i\alpha} R(g)_{\beta j} = \frac{\delta_{\alpha\beta} \delta_{ij}}{n}.
\end{align*}
This is the precise matrix-coefficient orthogonality relation, often stated separately as the Schur orthogonality of matrix coefficients.
[/guided]
[/step]
[step:Sum the matrix-coefficient identity to obtain $\langle \chi, \chi \rangle = 1$]
From the inner-product expansion of Step 1 (with $\rho' = \rho$):
\begin{align*}
\langle \chi, \chi \rangle = \frac{1}{|G|} \sum_{g \in G} \sum_{i=1}^n \sum_{j=1}^n R(g^{-1})_{ii}\, R(g)_{jj}.
\end{align*}
Apply the formula from the previous step with $\alpha = i$ and $\beta = j$:
\begin{align*}
\frac{1}{|G|} \sum_{g \in G} R(g^{-1})_{ii}\, R(g)_{jj} = \frac{\delta_{ij}\, \delta_{ij}}{n} = \frac{\delta_{ij}}{n}.
\end{align*}
(We used $\delta_{ii} = 1$ for the first factor, and $\delta_{jj} = 1$ — the second occurrence of $\delta_{ij}$ comes from $\alpha = i, \beta = j$ giving $\delta_{\alpha\beta} = \delta_{ij}$, and the third index pair is $i, j$, also giving $\delta_{ij}$. Multiplying yields $\delta_{ij}^2 / n = \delta_{ij}/n$.)
Substituting and summing:
\begin{align*}
\langle \chi, \chi \rangle = \sum_{i=1}^n \sum_{j=1}^n \frac{\delta_{ij}}{n} = \frac{1}{n} \sum_{i=1}^n \sum_{j=1}^n \delta_{ij} = \frac{1}{n} \sum_{i=1}^n 1 = \frac{n}{n} = 1.
\end{align*}
[guided]
Now we plug the matrix-coefficient identity from Step 5 into the expansion of Step 1. The relevant case has $\alpha = i$ and $\beta = j$ (so we are summing the diagonal terms $R(g^{-1})_{ii} R(g)_{jj}$, which is what appears in the character sum). The right side becomes
\begin{align*}
\frac{\delta_{ij} \delta_{ij}}{n} = \frac{\delta_{ij}}{n},
\end{align*}
since $\delta_{ij}^2 = \delta_{ij}$ (an indicator squared is itself).
Summing over $i$ and $j$:
\begin{align*}
\langle \chi, \chi \rangle = \sum_{i,j} \frac{\delta_{ij}}{n}.
\end{align*}
The double sum $\sum_{i,j} \delta_{ij} = \sum_i 1 = n$ (only the $j = i$ term survives, contributing $1$, for each of the $n$ values of $i$). Hence
\begin{align*}
\langle \chi, \chi \rangle = \frac{n}{n} = 1.
\end{align*}
A clean, dimensional cancellation: the factor of $1/n$ from Schur cancels the count $n$ of diagonal indices.
[/guided]
[/step]
[step:Combine the two cases]
Steps 4 and 6 cover the two possibilities. If $\rho \not\cong \rho'$, then $\langle \chi, \chi' \rangle = 0$. If $\rho \cong \rho'$, then characters are determined up to isomorphism (by [Characters Determine Representations](/theorems/2425), or more elementarily by the trace identity for conjugate representations), so $\chi' = \chi$, and Step 6 gives $\langle \chi, \chi' \rangle = \langle \chi, \chi \rangle = 1$.
Hence
\begin{align*}
\langle \chi, \chi' \rangle = \begin{cases} 1 & \text{if } \rho \cong \rho', \\ 0 & \text{otherwise,} \end{cases}
\end{align*}
which is the statement of the row orthogonality relations.
[/step]