The approach to tensor products of vector spaces is this: think of them abstractly but you should have concrete examples in mind.
The first problem arises from the fact that if $V$ and $W$ are vector spaces (abstract or concrete) then $V \otimes W$ is another vector space that can be constructed in more than one ways and, depending on the situation, one way may better than another.
I suggest you focus on $V=W =$ the set of real-valued functions on a set $S$. Suppose that $S$ is finite even, in which case $V$ is isomorphic to the $|S|$-dimensional Euclidean space. But think of $V$ as a space of functions. If $x \in V$, let $x_i$ be the value of the function $x$ at the point $i\in S$. Now think of functions of two variables, i.e., of functions on $S \times S$. What is the simplest way to create a function of two variables? Well, take two functions $x, y$ of one variable (i.e., $x, y \in V$) and form the function $ (i,j) \mapsto x_i y_j. $ Give a name to this function: $x \otimes y$. So, $ (x \otimes y)(i,j) := x_i y_j. $ The set of these functions (call them "elementary") is not a linear space. Taking linear combinations of them you create new functions of two variables. Define then $ V \otimes V := \text{ all finite linear combinations of elementary functions.} $
Theorem (you can prove it): If $S$ is finite then $V \otimes V$ is the set of ALL functions of $2$ variables.
This is what the tensor product in a concrete case is. You can repeat the argument with $n$ copies of $V$, tit for tat.
The abstract case is just an embodiment of this concrete idea.
If we could think of an abstract vector space as a space of functions then we can repeat the concrete process and construct tensor products in the same way. Can we think of an abstract vector space as a space of functions? Yes. By thinking of an element $v \in V$ as a function taking a linear functional $f: V \to \mathbb R$ into the number $f(v)$. Using this idea you can concretely construct $V \otimes V$ and $V \otimes V \otimes V$, etc, and even $V \otimes U \otimes W$, etc.
But it's not advisable to always think of this concrete way of constructing tensor products for abstract spaces. Why not? To understand, you need experience.
So, then, we have an abstract way of constructing the tensor product space $T= V \otimes V$, and it is this:
Definition. $T$ is SOME vector space with the property that there is some bilinear map $\otimes : V \times V \to T$ such that, for any vector space $W$ and for any bilinear map $\phi: V \times V \to W$ there is a LINEAR map $\overline \phi: V \otimes V \to W$ with $ \phi(v_1, v_2) = \overline\phi(v_1\otimes v_2). $
EXERCISES: Fix $V$.
1) Show that such a $T$ exists. (We've done it.)
2) Show that if $T, T'$ are two tensor product spaces then there is a linear bijection $A: T \to T'$ and a linear bijection $B: T' \to T$. Hence the two spaces are ``the same''. Hence, no matter how we define $T$, we essentially get the same thing.