I want to do this using an infinite grid as it seems easiest to me but I am open to other suggestions as well to improve my understanding.
My attempt: $$\begin{array}{c | c | c | c | c} (0,0) & (1,0) & (-1,0) & (2,0) & (-2,0).....\\ \hline (0,1) & (1,1) & (-1,1) & (2,1) & (-2,1).....\\ \hline (0,2) & (1,2) & (-1,2) & (2,2) & (-2,2)..... \\ \hline (0,3) & (1,3) & (-1,3) & (2,3) & (-2,3)..... \end{array}$$
$$\begin{array}{c | c | c | c | c} 1 & 3 & 6 & 10 & 15.....\\ \hline 2 & 5 & 9 & 14 & 20.....\\ \hline 4 & 8 & 13 & 19 & 26..... \\ \hline 7 & 12 & 18 & 25 & 33..... \end{array}$$
The columns also extend down by an infinite amount. I then tried to create a bijection from $\Bbb N$ $->$ $\Bbb Z$ $\times$ $\Bbb N$ by starting from the top left at $(0,0)$, and then preceding up each diagonal from bottom left to top right. So $1$ maps to $(0,0)$, $2$ maps to $(0,1)$, $3$ maps to $(1,0)$ and so on. This creates a bijection $f$: $\Bbb N$ $->$ $\Bbb Z$ $\times$ $\Bbb N$ in which each natural number maps to the pair ($a,b)$ in the grid above. I then explained why this is both injective and surjective to give a bijection.
Okay so taking the ideas together I have this for proving $\Bbb Q$ is countably infinite.
First, let's look at $\Bbb Z$ $\times$ $\Bbb N$ and prove this is countably infinite. We can write the elements of $\Bbb Z$ $\times$ $\Bbb N$ on an infinite grid as shown below.
The right hand side shows how the elements of this grid may be labelled with elements of $\Bbb N$, by taking $max(|a|,b)$ where $a \in \Bbb Z$ and $b \in \Bbb N$. This creates a bijection from $\Bbb Z$ $\times$ $\Bbb N$, namely the function $f$ : $\Bbb Z$ $\times$ $\Bbb N$ -> $\Bbb N$, in which each $n$ $\in$ $\Bbb N$ in the right hand grid maps to the pair $(a, b)$ in the corresponding position in the left hand grid (so, for instance, $f(5) = (-2, 2)$ and $f(8) = (1, 2))$. Indeed, $f$ is well-defined since every natural number appears once in the right hand grid and so is mapped to exactly one pair in the left-hand grid; $f$ is injective and surjective since each pair appears precisely once in the left-hand grid so is mapped to by exactly one element of $\Bbb N$. The existence of this bijection proves that $\Bbb Z$ $\times$ $\Bbb N$ is countably infinite.
Now, I want to prove there exists a surjection $g$: $\Bbb Z$ $\times$ $\Bbb N$ -> $\Bbb Q$, defined for $m$ $\in$ $\Bbb Z$ and $n$ $\in$ $\Bbb N$, by $(m,n) -> \frac{m}{n}$. This is clearly a surjective function because every rational number has at least one preimage in $\Bbb Z$ $\times$ $\Bbb N$. However, it isn't injective because some pairs $(m,n)$ map to the same rational number, such as $g((1,2)) = g((2,4)) = \frac{1}{2} = \frac{2}{4}$. So surjective.
Then $|\Bbb Q$| $\leq$ $|\Bbb Z$ $\times$ $\Bbb N|$ $=$ $\Bbb N$. Since $\Bbb N$ $\subseteq$ $\Bbb Q$ it follows from the CSB theorem that $|\Bbb N|$ $\leq$ $|\Bbb Q|$, so $|\Bbb N|$ $=$ $|\Bbb Q|$ and hence the $\Bbb Q$ is countably infinite. $\square$