"하고" and "랑" are almost the same in terms of grammar, but "랑" is more informal meaning "with" or "and".
Here are the usages of it.
1) noun + 랑/하고 = with
친구하고 영화관에 갔어요.
= 친구랑 영화관에 갔어요.
= I went to the movie with a friend of mine.
2) noun + 하고/랑+ noun = and (usually link two nouns)
너+하고+나는 공통점이 많아
= 너+랑+나는 공통점이 많아
= You and I have a lot in common.
3) Verb + (하)고 = and (then)
우리는 저녁먹고 영화보러 갔다.
= We had dinner and went to the movie.
"그리고(= and then)" can be used to link sentences or nouns.
For example,
1) sentence + 그리고 + sentence
a) 나는 저녁을 먹었다 = I had dinner
b) 나는 영화관에 갔다 = I went to the movie
Assuming a) happened and then b) happened,
나는 저녁을 먹었다 그리고 나는 영화관에 갔다.
(I had dinner and (then) went to the movie)
= 나는 저녁을 먹고 그리고 영화관에 갔다.
= 나는 저녁을 먹고 나서 영화관에 갔다.
(After I had dinner, I went to the movie)
2) noun + 그리고 + noun (link more than two)
You and I
= 너 그리고 나 (in written)
= 너 하고 나(in spoken)
= 너 랑 나(in spoken, more casual than "하고")
I love to eat Ramyon, Naengmyeon, Bulgogi and Sundae.
저는 라면, 냉면, 불고기 그리고 순대를 좋아해요.
\^O^/