Suppose x and y are two different basis sets for a vector space, and are not the same size. First suppose x is infinite and y is finite. Each element of y is spanned by x, hence each element of y is a finite linear combination of basis elements from x. Finitely meny basis elements of x are sufficient to span y, which spans the space. Additional elements of x are spanned by the earlier elements in x, and x is not an independent set.
Next let x and y be finite sets of size k and l respectively, where k < l. Reorder the elements of x if necessary, so that the representation of y1, relative to the basis x, places a nonzero coefficient on x1. Now replace x1 with y1. Since the former x1 is still spanned, the space is the same. Verify that the new set x, containing y1, is still linearly independent. Do the same for y2, realizing that y2 cannot be spanned by y1 alone. Replace x2 with y2, then do the same for y3, and so on. After k iterations the set x has been transformed into the first k vectors in y, which span the last l-k vectors of y, hence y was not a basis. This argument runs just as well in the other direction, hence each finite basis has the same size.
Finally let x and y be infinite bases for a vector space. Represent each element of x as a linear combination of elements of y. Let f be a function from the set x into the finite subsets of y. Specifically, f maps an element of x into the set of basis elements from y that are used to represent that element in x. If a finite subset of y contains n elements, at most n independent vectors can be spanned by these n elements. We just proved this in the last paragraph. At most n elements of x map into a finite subset of y having size n. The cardinality of x is no more than the cardinality of y + 2 times the pairs from y + 3 times the triples from y, and so on. If the cardinality of y is s, we have s + 2s2 + 3s3 + 4s4 etc, and this produces the same cardinality s. (We're not going to prove this here.) Therefore |x| is no larger than |y|. Run this argument in the other direction and |y| is no larger than |x|. Both sets have the same cardinality.
Each vector space is uniquely determined by its ring of coefficients and its dimension. Every space of dimension 3 over the reals looks like the familiar xyz space, after relabeling.
When a ring R has the invariant dimension property, free R modules are isomorphic iff they have the same dimension. Map one basis onto another to implement the isomorphism. Modules over a division ring R are free, and have the invariant dimension property, hence there is one R module for each cardinal, which measures the dimension of the module.
If you aren't familiar with rings modules and cardinals, don't worry about it. We'll be back to real numbers and normal space as soon as you click Next.