If you watch it as a plot then the characters played by the actors have rightly justified their roles.. Nasiruddin for Akbar, Sandhya as Jodha , Aditi Rao as Anarkali, Ashim Gulati as Salim alias Jahangir…story line is inspired from the history but mind you the entire plot is a fiction and not historically correct.
In fact the character Anarkali as much as they have focused around the first season is an entire work of fiction which never happened ever in real life. Accordingly to historical facts each of the Mughal princes had their own harems and they are not allowed to ever enter harems of their peers or the Sultan then Salim if ever entered the royal harem of the Sultan Akbar itself would have been blasphemy in those times and it would have triggered a political war and considered treacherous action. Salim only and ever had eyes for one woman whom he minted the coins along with his own. And who ruled the entire Mughal era behind the pardah, she is known loving as named by him “the light of the world - Noorjahan” alias Meherunissa begum youngest daughter of Ghias beg.
Also as shown in the series Khusrau was never adopted by Ruqaiya begum. In fact the sovereign Shah Jahan whose real name was Khurram, son of Jagat Gossaini was actually adopted by the then Padshah begum Ruquaiya, coz she was childless and wanted a son. Hence Akbar ordered that though Jagat would be reading the boy but legally his mother would be Ruquaiya begum who would groom him to be the future of the empire. If the storyline could have been kept intact with what exactly happened in real life history then the show would have been authenticated and better.