while going towards swat the road near takht bai to bat khela is really bad, after that its okay on the malakand mountain, when you cross the mountains you may have to cross the lowari top to go to chitral and kalash. if you keep going straight instead of turning towards lowari top, you will reach swat, mingora. You may try malamjabba, worth seeing and staying a couple of nights if you get a room. People also rent out those muddy huts near the main PTDC hotel. On return go towards kalam and you will see khawazkhla. Turn right from there, althought that road is not good, but on a 4x4, you will easily reach Besham on the indus highway, continue north, this is karakorum highway, be patient, although dangerous, but keep going slowly and you will reach Chillas, passing Nanga parbat, gilgit and further up to hunza. Roads laid upto khunjarab paas after this point are not that bad or dangerous. Further details could be provided if required.