[proofplan]
The strategy is a two-step decomposition. First, decompose $X$ into $G$-orbits $X = X_1 \sqcup \cdots \sqcup X_\ell$. The permutation representation splits as $\pi_X = \pi_{X_1} + \cdots + \pi_{X_\ell}$, which by sesquilinearity of the inner product reduces the claim to the transitive case. Second, in the transitive case, expand $\langle \pi_X, 1_G \rangle$ as a Burnside-type double count: the sum $\sum_g \pi_X(g)$ counts pairs $(g, x)$ with $gx = x$, and re-summing over $x$ gives $\sum_x |G_x|$. Orbit-stabiliser gives $|G_x| = |G|/|X|$, and the count collapses to $1$.
[/proofplan]
[step:Decompose $X$ into orbits and split the permutation character accordingly]
Let $X = X_1 \sqcup \cdots \sqcup X_\ell$ be the partition of $X$ into $G$-orbits. Each $X_i$ is $G$-invariant, so the permutation representation $\pi_X$ on the free $\mathbb{C}$-vector space $\mathbb{C}[X]$ decomposes as a direct sum
\begin{align*}
\mathbb{C}[X] = \mathbb{C}[X_1] \oplus \cdots \oplus \mathbb{C}[X_\ell],
\end{align*}
with $G$ acting on each summand $\mathbb{C}[X_i]$ via the corresponding orbit permutation representation $\pi_{X_i}$. Taking traces (which add over direct sums of representations),
\begin{align*}
\pi_X(g) = \pi_{X_1}(g) + \cdots + \pi_{X_\ell}(g) \quad \text{for all } g \in G.
\end{align*}
By linearity of the inner product in the first slot,
\begin{align*}
\langle \pi_X, 1_G \rangle = \sum_{i=1}^\ell \langle \pi_{X_i}, 1_G \rangle.
\end{align*}
It therefore suffices to prove $\langle \pi_{X_i}, 1_G \rangle = 1$ for each transitive component $X_i$; summing over $i$ then gives $\langle \pi_X, 1_G \rangle = \ell$, the number of orbits.
[guided]
A permutation representation respects the orbit structure: if $X = X_1 \sqcup \cdots \sqcup X_\ell$ are the orbits, then $\mathbb{C}[X]$ has $\mathbb{C}[X_i]$ as $G$-stable subspaces (the action permutes basis vectors of $X_i$ among themselves, never crossing into another orbit). The decomposition is internal direct sum, and characters add over direct sums.
Inner products are linear in the first slot, so
\begin{align*}
\langle \pi_{X_1} + \cdots + \pi_{X_\ell}, 1_G \rangle = \sum_i \langle \pi_{X_i}, 1_G \rangle.
\end{align*}
This reduces the problem to: prove $\langle \pi_Y, 1_G \rangle = 1$ when $G$ acts transitively on $Y$. Once we have this, summing over the $\ell$ orbits gives the answer $\ell$.
[/guided]
[/step]
[step:Reduce to the transitive case via Burnside's double count]
Assume now $G$ acts transitively on $X$. By definition,
\begin{align*}
\langle \pi_X, 1_G \rangle = \frac{1}{|G|} \sum_{g \in G} \overline{\pi_X(g)} \cdot 1 = \frac{1}{|G|} \sum_{g \in G} \pi_X(g),
\end{align*}
where we used $\overline{\pi_X(g)} = \pi_X(g)$ since $\pi_X(g) = |\operatorname{Fix}_X(g)|$ is a non-negative integer.
By definition of the permutation character,
\begin{align*}
\sum_{g \in G} \pi_X(g) = \sum_{g \in G} |\{x \in X : gx = x\}| = |\{(g, x) \in G \times X : gx = x\}|.
\end{align*}
We now reverse the order of summation: instead of summing fixed points over $g$, sum stabilising elements over $x$. Define the **stabiliser** of $x \in X$ by $G_x := \{g \in G : gx = x\} \leq G$. Then
\begin{align*}
\{(g, x) \in G \times X : gx = x\} = \bigsqcup_{x \in X} G_x \times \{x\},
\end{align*}
and counting yields
\begin{align*}
\sum_{g \in G} \pi_X(g) = \sum_{x \in X} |G_x|.
\end{align*}
[guided]
This step is **Burnside's lemma in disguise**. The set $\{(g, x) : gx = x\}$ counts incidence between group elements and fixed points. Counting it row-by-row (sum over $g$, count fixed points) gives $\sum_g \pi_X(g)$. Counting it column-by-column (sum over $x$, count stabilising elements) gives $\sum_x |G_x|$. The two answers must agree because they count the same set.
The conjugation $\overline{\pi_X(g)} = \pi_X(g)$ holds because $\pi_X(g)$ is a non-negative integer (the number of fixed points of a permutation), and integers are real, so they equal their own conjugates. This eliminates the bar and lets us drop directly into the integer arithmetic of fixed-point counting.
[/guided]
[/step]
[step:Apply orbit-stabiliser to evaluate the sum and conclude $\langle \pi_X, 1_G \rangle = 1$]
By the orbit-stabiliser theorem applied to the (assumed) transitive action of $G$ on $X$, for each $x \in X$ the orbit of $x$ is all of $X$, so
\begin{align*}
|G_x| \cdot |X| = |G|, \qquad \text{equivalently} \qquad |G_x| = \frac{|G|}{|X|}.
\end{align*}
This holds for every $x \in X$ — in particular, all stabilisers have the same size. Summing,
\begin{align*}
\sum_{x \in X} |G_x| = |X| \cdot \frac{|G|}{|X|} = |G|.
\end{align*}
Substituting into the previous step,
\begin{align*}
\langle \pi_X, 1_G \rangle = \frac{1}{|G|} \sum_{x \in X} |G_x| = \frac{|G|}{|G|} = 1.
\end{align*}
[guided]
Orbit-stabiliser says that for any group action on a set, the orbit of $x$ and its stabiliser are linked by $|G \cdot x| \cdot |G_x| = |G|$. We are in the transitive case, so $|G \cdot x| = |X|$ for every $x$, giving $|G_x| = |G|/|X|$ uniformly.
The sum $\sum_x |G_x|$ then has $|X|$ identical terms, each equal to $|G|/|X|$, so it sums to $|G|$. Dividing by $|G|$ in the inner product gives exactly $1$. The miracle of the cancellation is the rigidity of transitive actions: every point has the same-sized stabiliser, and the count balances exactly.
[/guided]
[/step]
[step:Combine the orbit decomposition and the transitive count]
Combining Step 1 (the reduction to orbits) with Step 3 (the transitive case),
\begin{align*}
\langle \pi_X, 1_G \rangle = \sum_{i=1}^\ell \langle \pi_{X_i}, 1_G \rangle = \sum_{i=1}^\ell 1 = \ell,
\end{align*}
which is the number of $G$-orbits on $X$. The "in particular" assertion is the special case $\ell = 1$ already proved as Step 3.
[/step]