The difference is the same as between food and free lunch. :-)
Beyond jokes: same thing, see
http://en.wikipedia.org/wiki/Free_store_%28programming%29[
^].
I cannot really tell you "detail" about heap and stack. Both are so fundamental concepts in programming, so they are not a part of any technical knowledge. They are part of education. I could quickly write about it, but it makes no sense: it would be a whole article beyond the format of CodeProject Questions & Answers, and you would not really understand it without serious practical exercise. By the same reason I don't want to give you references. You really want to read a book and solve some related problems.
Really, if you don't understand these concept and usage, you do not do real programming, or do it like you were blind-folded.
—SA