The issue with the Axiom of Choice is that "choosing elements" is no different than stating there exists "some function" that chooses for you. Let's show the Axiom of Choice in use and not in use.
"$2^\mathbb{N}=\prod_{\mathbb{N}}\{0,1\}=\{0,1\}\times\{0,1\}\times\cdots$ is non-empty."
Well, $(0,0,0,0,\ldots)$ (that is, assign $0$ to each spot in the vector) is an infinitely long vector that is in the set. Thus, $2^\mathbb{N}$ is non-empty. This proof did not use the Axiom of Choice, simply because I told you the element to pick. The Axiom of Choice is used when you don't know what element to pick.
"Let $A_i$ for $i\in\mathbb{N}$ be a collection of non-empty sets, then $\prod_\mathbb{N} A_i$ is a non-empty set."
Well, I would like to say that $(a_0,a_1,a_2,\ldots)$ is a vector in the set, where $a_i\in A_i$. But stating that such a vector exists is the same as assuming that there is a function that assigns each $A_i$ to the element $a_i$. That is, if $v=(a_0,a_1,a_2,\ldots)$ really does exist then $$f:\{A_0,A_1,\ldots\}\to \{\text{all the elements in }A_i's\}$$ by $$f(A_i)=\text{the }i\text{th entry in vector }v,$$ is a function that must also exist.
And there is the Axiom of Choice being used. There is no reason to assume that such a function exists (or that such a vector exists). If you can't explicitly define the assigning function, then how do you know it exists? The Axiom of Choice is the assumption that there always exists a function that can assign a collection of sets to it's own elements.
We see the Axiom of Choice in even more subtle ways. For example suppose you had a proof like:
"Let $\Omega$ be an arbitrary set. Let $A$ be an infinitely countable subset of $\Omega$ ..."
But wait, if $A$ is infinitely countable then by definition $A$ is subscriptable by the natural numbers like so, $A=\{a_0,a_1,a_2,\ldots\}$ that means there is some function $f:\mathbb{N}\to \Omega$ exists and that $f(\mathbb{N})=A$. How do I know that such a function exists? I can certainly pick an element of $\Omega$ (at random) and assign it to one, I can then pick another element from $\Omega$ and assign it to two. But how do I pick an infinite number of elements and assign them to the Natural Numbers. I can't tell you how to do it, I have to assume that it is possible by The Axiom of Choice. The Axiom of Choice gives us that $\prod_\mathbb{N} \Omega$ is a non-empty set.
Notice the subtlety of the above discuss. Simply picking an infinitely countable subset from an arbitrary set requires the Axiom of Choice. Or for that matter, simply subscripting a set could be using the Axiom of Choice, after all subscripting is another way of assuming that a choice function exists. The Axiom of Choice is abused extensively when dealing with sub-scripting stuff like sequences.
In general, the Axiom of Choice comes into play when you are dealing with arbitrary sets. If you know anything about the sets, then you don't need the Axiom of Choice. For example, "$\cup_{n\in\mathbb{N}} \{0+\frac{1}{n},1+\frac{1}{n},\ldots\}$ is countable" can be proven without the Axiom of Choice, since I can explicitly define the function that shows this is countable. However, "The countable union of countable sets is countable" is not provable without the Axiom of Choice, since we are dealing with arbitrary sets.
The worst thing about the Axiom of Choice is that you can very well assume that it is not true and you won't contradict the other Axioms of ZF. Thus there really is no reason not to assume that there are arbitrary products of non-empty sets that are empty. :-(
Sorry for the long discussion.