In the abstract vector space case, where "dual space" is the algebraic dual (the vector space of all linear functionals), a vector space is isomorphic to its (algebraic) dual if and only if it is finite dimensional.
Bill Dubuque gives a nice argument in a sci.math post (see Google Groups or MathForum)
If $\mathbf{V}$ is an infinite dimensional vector space over $\mathbf{F}$ of dimension $d$, then the cardinality of $\mathbf{V}$ as a set is equal to $d|\mathbf{F}|=\max\{d,|\mathbf{F}|\}$, and $\mathbf{V}$ is isomorphic to $\mathbf{F}^{(d)}$ (functions from a set of cardinality $d$ to $\mathbf{F}$ with finite support), and the dual $\mathbf{V}^*$ is isomorphic to $\mathbf{F}^d$ (all functions from a set of cardinality $d$ to $\mathbf{F}$), so $|\mathbf{V}^*| = |\mathbf{F}|^d$.
If the dimension of $\mathbf{V}^*$ is $d'$, we want to show that $d'\gt d$. Note that, as with $\mathbf{V}$, we have $|\mathbf{V}^*|=d'|\mathbf{F}| = \max\{d',|\mathbf{F}|\}$.
Now let $\{\mathbf{e}_n\}$ be a countable linearly independent subset of $\mathbf{V}$, and extend to a basis. For each $c\in \mathbf{F}$, $c\neq 0$, define $\mathbf{f}_c\colon \mathbf{V}\to\mathbf{F}$ by $\mathbf{f}_c(\mathbf{e}_n) = c^n$, and making $\mathbf{f}_c$ equal to $0$ on the rest of the basis. Thet set of all $\mathbf{f}_c$, $c\neq 0$, is linearly independent, so we can conclude that the dimension if $\mathbf{V}^*$ must be at least equal to $|\mathbf{F}|$ (in the finite case, we know the dimension is at least $d\gt |\mathbf{F}|$).
That means that
$$|\mathbf{V}^*| = d'|\mathbf{F}| = \max\{d',|\mathbf{F}|\} = d'.$$
But we also know that $|\mathbf{V}^*| = |\mathbf{F}|^d$. Since $d< |\mathbf{F}|^{d}$ (since $|\mathbf{F}|\geq 2$), then $d' = |\mathbf{F}|^d\gt d$, proving that the dimension of $\mathbf{V}^*$ is strictly larger (in the sense of cardinality) than that of $\mathbf{V}$.
The isomorphism in the finite dimensional case is standard.
So for the algebraic dual, there is never an isomorphism in the infinite dimensional case.
In the Hilbert space case (or in a Banach space, or more generally a topological vector space), one usually restricts to the continuous (or bounded) functionals, so that $\mathbf{V}^*$ denotes the bounded functionals rather than the regular functions. In that case, some spaces are topological-vector-space isomorphic to their double duals, and some not, as AD shows in his answer. The ones that are isomorphic are important enough to get their own name (reflexive). Hilbert spaces are always reflexive, and there are other classes of topological vector spaces that are always reflexive (see Wikipedia's page on reflexive spaces).
If $V$ and $W$ have bases $B_V$ and $B_W$, the axiom of choice proves that the cardinality of such a basis is unique. If $|B_V|=|B_W|$, then any bijection between the two sets can be extended (uniquely) to an isomorphism between $V$ and $W$. Just like in the finite case.
If both spaces have a countable basis, then this is immediate.
"Uncountable" just means "not countable" just like "having at least two elements" does not mean anything except that the set has more than one element.
However, it should be noted, that if $V$ and $W$ have the same cardinality it does not mean that they have the same dimension. $\Bbb R$ and $\Bbb R[x]$ have the same cardinality, but $\Bbb R$ is only one dimensional, whereas $\Bbb R[x]$ has a countably infinite dimension. Moreover, the dual space of $\Bbb R[x]$, which is $\Bbb{R^N}$ (all the infinite sequences) has the same cardinality as well, but its dimension is already uncountable.
If, however, the spaces have the same cardinality and it is larger than the cardinality of the field, then they have the same dimension and are therefore isomorphic. For example, $\Bbb R$ and $\Bbb C$ have the same cardinality and are both vector spaces over $\Bbb Q$, so they are isomorphic as such vector spaces. But as vector spaces over $\Bbb R$ they no longer satisfy the second requirement and indeed they are not isomorphic as $\Bbb R$-vector spaces.
Best Answer
A linear functional $f$ on the vector space of real polynomials is determined by the real numbers $f(1), f(x), f(x^2),\dots$ and for any sequence of real numbers $\{a_n\}$ we can define a linear functional $f$ so that $f(x^n)=a_n$. Therefore an isomorphism between the two vector spaces is given by the map $$f\mapsto (f(1),f(x),f(x^2),\dots)$$