To answer your questions about flight it is based on the time of year you are traveling. Low is Jan-mid March and also early Nov- early Dec. If you are looking at going this summer keep in mind it will be high season and also the World Cup is in South Africa... making some fares go up.
If you are flexible you will have better luck finding a lower price flight. Also I have flown Emirates Airlines and they are not do bad for the off/low season. Hope this info helps and happy trip planning.