The southern Qiangtang magmatic belt was formed by the north-dipping subduction of the Bangong–Nujiang Tethyan Ocean during Mesozoic. To better understand the petrogenesis, time–space distribution along the length of this belt, 21 samples of several granitoid bodies, from west to east, in the Bangong Co, Gaize, Dongqiao and Amdo areas were selected for in-situ zircon U–Pb dating, Hf isotopic and whole-rock chemical analyses. The results suggest a prolonged period of magmatic activity (185–84Ma) with two major stages during the Jurassic (185–150Ma) and the Early Cretaceous (126–100Ma). Both the Jurassic and Cretaceous granitoids are high-K calc-alkaline I-type rocks, except the Cretaceous two-mica granite from Amdo in the east, which belongs to S-type. The granitoids are generated from different source materials as indicated by zircon Hf isotopic compositions. The Bangong Co and Dongqiao granitoids show high zircon εHf(t) values of −1.3–13.6 with younger TDMC ages of 293–1263Ma, suggesting a relatively juvenile source; whereas the Gaize and Amdo granitoids have low εHf(t) values of −16.1–2.9 with older TDMC ages of 999–2024Ma, indicating an old crustal contribution. These source rocks melt at different P–T conditions as suggested by Sr/Y ratio and TZr. The Sr/Y ratio of both stage granitoids increases with decreasing age. However, the TZr of the Jurassic granitoids decreases, whereas the TZr of the Cretaceous granitoids increases with decreasing age. The contrasting geochemical signatures of these granitoids may be controlled by the varying contribution of slab-derived fluids involved in the generation of the Jurassic and Cretaceous granitic magmas; i.e. increasing amount of fluids in the Jurassic, whereas decreasing amount of fluids in the Cretaceous. Therefore, it is proposed that the Jurassic and Cretaceous magmatism may be related to subduction and closure of the Bangong–Nujiang Tethyan Ocean, respectively. The age pattern of the Jurassic and Cretaceous granitoids suggests an oblique subduction of the Bangong–Nujiang Tethyan Ocean and a diachronous collision between the Lhasa and Qiangtang blocks.