after you defeat Elsia, go west and meet her at the bridge. you will get lead across a bridge and there you are in Driftveil city :)
Driftveil City.
After defeating Driftveil city's gym Bianca will give you it
Driftveil City
top right corner of the city
You get it from Bianca in Driftveil City.
it is at driftveil city
driftveil city
You get the HM in driftveil City from Bianca
it is given to you by a boy in driftveil city to the west of the pokecenter
In Driftveil City, you can fight a "heartbreaker" biker. It depends on the version, in Black, he'll teach you about Rotation Battles; in White, he'll teach you about triple battles.
N's Zoura is found in driftveil city
you would have to go through chargestone cave which is north of driftveil city