2013年7月,王上源加盟布鲁日足球俱乐部,成为首位加盟布鲁日的中国球员。2015年2月,王上源加盟广州恒大淘宝足球俱乐部 。在效力广州恒大淘宝的三个赛季里,王上源代表广州恒大淘宝出场85次,攻入3粒进球并贡献3次助攻;随队夺得三次中超联赛冠军(2015赛季、2016赛季和2017赛季)、1次中国足协杯冠军(2016赛季)以及1次中国足协超级杯冠军(2017赛季)。2018年6月,王上源将以租借的形式加盟河南建业 。
2019年2月28日,王上源转会至河南建业。3月9日,在2019赛季中超联赛第2轮河南建业2-2战平山东鲁能泰山的比赛中,王上源在第25分钟助攻克里斯蒂安·巴索戈破门,完成个人在2019赛季的首次助攻。9月14日,在2019赛季中超联赛第24轮河南建业4-1战胜河北华夏幸福足球俱乐部的比赛中,王上源在第20分钟头球破门,完成个人在2019赛季的首粒进球。2019赛季,王上源代表河南建业出场25次,场均登场86.7分钟,攻入1粒进球并贡献3次助攻。
2020年1月,王上源入选联赛优秀中国籍球员技术档案库 。
2019年10月,王上源首次入选中国国家男子足球队的集训大名单;12月,王上源在东亚杯上完成个人在国家队的处子秀。