2012 aasta suveolümpiamängudel peeti Sunit 400 ja 1500 meetri vabasõitja favoriidiks.
, samuti võistleja 200 meetri vabas stiilis. Oma esimesel võistlusel, 400 meetri vabasõidus, võitis ta kuldmedali ajaga 3:40.14, purustades Ian Thorpe'i varasema olümpiamängija rekordi ja saades esimeseks Hiina meessoost ujujaks, kes võitis olümpiamängudel kuldmedali. Tema aeg oli ka kolmas kiireim ajaloos, 0,07 sekundi kaugusel maailmarekordist ja uue Aasia rekordi seadmine. Pärast terve päeva taastumist võistles Sun 200 meetri vabas stiilis. Ta võitis finaalis hõbemedaali, olles Park Tae-hwaniga võrdses tempos 1:44.93, mis on uus riiklik rekord. Järgmisel päeval ujus Sun 4 × 200 meetri vabas stiilis reljees, et aidata Hiina meeskonnal võita pronssi, mis oli Hiina esimene olümpiamedaal meeste reljeesündmuses.