You've got pretty big choice. Everything depends on your preferences:
1) discounted Vienna-Prague Spar ticket for 29 euro (purchased online and in advance on Austrian railways website). Return ticket cheaper to buy on Czech railways website (
https://eshop.cd.cz/international/search_cd-obb.aspx?lang=E) - 19 euro
2) EURegio ticket Vienna - Ceske Budejovice (22 euro) and domestic Czech ticket from Ceske Budejovice to Prague (211 CZK one way)
3) EURegio ticket Vienna – Znojmo (12 euro) and domestic Czech tickets Znojmo-Prague (323 CZK one way)
4) EURegio Vienna-Bratislava (14 euro) + CityStar ticket Bratislava-Prague (33.3 euro)
Depending either you travel alone or with friends/family etc. you might consider SONE/CD-NET tickets for domestic Czech travels (more info here -
http://europetrainsguide.com/200907167/Countries/Czech-republic/Czech-Republic-CD.html)