6. Jacques Kallis

A true modern all-rounder, Kallis scored 13,289 runs in 166 Tests with 45 Test centuries and 58 half-centuries at an average of 55.37 — second only to the iconic Sachin Tendulkar.
He also had 292 wickets with five five-wicket hauls and took 200 catches in the longer format.