Here is the proof provided in my lecture notes:
Let $A = \{B_n | n < \omega =\mathbb{N}\}.$ Assume each $B_n$ is countable. For each $n < \omega,$ let $E_n$ be set of all bijections between $\omega$ and $B_n.$ By Axiom of Countable choice, we can choose a function $f_n \in E_n$ for each $n < \omega.$ Now define surjective mapping $f:\omega \times \omega \to \bigcup A$ by letting $f(m,n)= f_m(n),$ for each $(n,m) \in \omega \times \omega.$
1.) $B_n$ is countable means that $|B_n| \leq |\mathbb{N}|.$ How do we know there will exist a bijection between $B_n$ and $\omega?$
2.) How does Axiom of Countable choice come into the picture?
Appreciate any explanation, thank you!
Well, you're right. We should use injection rather than bijection on the off chance that we have some finite sets there. Unless, of course, your definition of countable implies infinite as well. One could overcome this by replacing $B_n$ by $B_n\cup(\{n\}\times A)$, where $A$ is a fixed countably infinite set, but that's an ugly way of doing things.
And of course $\omega$ being the ordinal and cardinal of $\Bbb N$, so if $|A|\leq|\Bbb N|$, by definition there is an injection from $A$ into $\omega$.
And the axiom of countable choice gets into the picture because you have infinitely many sets, and you don't have a canonical way of enumerating a countable set. You have, in fact, $2^{\aleph_0}$ enumerations of a countably infinite sets, none of which is canonical (in most cases). So we have to choose an enumeration for each set. There are countably many sets, therefore the axiom of countable choice suffices.