I'm a south Korean.
'~에요' is most used in South Korea. 아요, 어요, 여요 are rarely used in South korea. ~습니다 is used widely in South Korea too.
오/소 is rarely used in South Korea, maybe old people or some province (my mother sometimes say '~소') but young people do not use ~오/~소(가오/갔소). But I think DPRK use that forms a lot. If Someone say ~소 a lot, maybe most people will think he is a north korean or 조선족(ethnic koreans living in China)'
반말 is used both Korea. You must use 반말 among your friends or family(but some strict family use 존댓말, usally to your dad) . If you use 존댓말(honorfic) among your friends, this is very akward. (No one use 존댓말 among his/her friends)
But you must not use '반말' to someone who is older than you and when you meet someone for the first time. When you get familiar with the person who is older than you, you could use 반말(but usally use 존댓말). But if the person is much older than you, you must use 존댓말 all the time. When the person's rank is higher than you, you must use '존댓말 not 반말. This is why the age(or rank) is very important in korea. (This is same for both Korea)
(I hope someone who knows DPRK better will answer soon~!)
Sorry for my poor English skill~! I'm studying English too. Haha~