Hilbert space
Take everything you loved about R^n with the dot product — lengths, angles, orthogonal projection, the Pythagorean theorem — and ask: can we keep all of it when there are infinitely many dimensions? A Hilbert space is the answer. It is a vector space with an inner product <u,v>, which gives a norm ||v|| = sqrt(<v,v>), and one extra demand: the space is complete. That single completeness condition is what lets infinite expansions actually converge to a point that lives inside the space.
Precisely: a Hilbert space H is an inner-product space that is complete in the metric d(u,v) = ||u - v||, meaning every Cauchy sequence has a limit in H. The inner product gives you all the finite-dimensional geometry for free: Cauchy-Schwarz |<u,v>| <= ||u|| ||v||, the parallelogram law, and orthogonality v perp w when <v,w> = 0. Completeness is the new ingredient — without it the geometry has holes you can fall through.
Why this matters: in a Hilbert space the best results from a first course survive intact. Closed subspaces have orthogonal complements, every vector splits uniquely as a projection plus a perpendicular remainder, and there are orthonormal bases you can expand against. This is the natural home for Fourier series, quantum mechanics, and least-squares done in infinite dimensions. Finite-dimensional inner-product spaces are automatically complete, so every one of them is a Hilbert space — the concept only becomes interesting when the dimension is infinite.
A caveat to carry forward: many comfortable finite-dimensional facts quietly require the subspace to be closed. A merely algebraic subspace can be dense (its closure is everything) yet not equal to the whole space, and projection onto it may not exist. In infinite dimensions you must always ask whether a subspace is closed before reaching for orthogonal complements or projections.
The two defining ingredients: an inner-product norm, plus completeness.
Mnemonic: Hilbert = inner product + completeness. Drop the inner product and keep completeness and you get a Banach space; keep the inner product but drop completeness and you get a mere inner-product (pre-Hilbert) space.