Moduli space vs. moduli stack of vector bundles I would like to understand in an intuitive level first and then a technical level also (keeping in mind I am a physicist) the difference between the moduli space of vector bundles and the moduli stack of vector bundles over an algebraic variety or scheme over a complete field, in specific $\mathbb{C}$ is sufficient for me. 
We can assume that the rank of the vector bundle is fixed. There is some jargon that I cannot figure out: moduli space vs. coarse moduli space, moduli space vs. moduli stack, moduli functor and moduli space etc.
I also want to note that I understand to some extent the definition of an algebraic stack as a 2-category but I do not see how this can be a possibly singular variety whose points parametrize isomorphism classes of vector bundles.
I also am a bit confused on the same question with the replacement of vector bundles to sheaves. But I do have some idea about the differences between the moduli space of the first and the moduli space of coherent torsion free sheaves. 
To summarize:


*

*Can you please explain in both intuitive and (Semi)-technical
level the difference between the words space and stack?

*Can you clarify when we need one and when the other?

*Can you explain the jargon?

*What happens if we switch to vector bundles to sheaves?


P.S. There are some nice books like the one of Huybrechts but it is quite above my level for now. 
 A: *

*To simplify greatly, one is interested in some sort of a "parameter space" for vector bundles, where it makes sense to say one bundle is the "limit" of sequence of other bundles, or to have a "curve" of bundles, and so on. Here you can compare it to simplest parameter spaces, like the projective space or a Grassmanian (in the latter space it makes sense, for example, to take a "curve" of linear subspaces, $C \to Grass$, which just means you are taking a family of linear subspaces parameterized by curve $C$).

Now it turns out that one just cannot construct a parameter space for all vector bundles as a a nice variety (or scheme), this space is somehow too large and too badly behaved.
At this point one has two choices - either construct a parameter space as something more complicated than a scheme (a stack), or restrict from all vector bundles to some subclass of those (moduli space of (semi)-stable bundles (sheaves)).
If you choose the first route, then your stack will be just a functor, which assigns to any parameterizing base $S$ a set of vector bundles on $X \times S$. [So that when applied to $S=\{pt\}$ one just gets all vector bundles on $X$]. If it happened to be representable by some scheme $M$, we would be done and just work with this "moduli space" $M$. However in this generality it is certainly not representable. Thus one applies the usual Grothendieck's philosophy of functor of points and tries to work with this functor as some sort of a space in and of itself. There is a lot of stacks machinery devoted to constructing  "atlases" of sorts allowing one to do geometry.
If you take the second route, and consider all semistable sheaves, then an analogous functor which assigns to any parameterizing base $S$ a set of semistable sheaves turns out to be (co)representable, so that all is fine and we work with the representing scheme directly (and not through the functor of points).
Both points of view have their pro's and con's. It is harder to work with the stack directly, but it somehow keeps the information about all bundles or sheaves. Working with the moduli space of semistable bundles is much more direct, but you now need to worry about how one gets to the information about any old bundle starting from semi-stable ones (and there are ways to decompose a given bundle into (semi)-stable ones - look up Harder-Narasimhan and Jordan-Holder filtrations).


*As is usual in mathematics, having both languages allows to shed light from different angles. I might be wrong, but the results one obtains in one language can very often be recast in the other.


*If the book by Huybrechts is too technical, you can try looking at Le Potier's "Lectures on vector bundles" (although you won't find anything about stacks there).


*Nothing really changes when we pass from vector bundles to sheaves. It is mostly a technical enlargement to get better properties of the resulting object.
PS. This answer is indeed excellent.
