大将軍衛青是平陽縣人(河東郡平陽縣,今山西臨汾),他的父親鄭季充當縣中小吏,在平陽侯曹壽(漢初相國曹參的曾孫)家做事,曾與平陽侯的小妾衛媪私通,生了衛青。衛青有個同母異父的兄長名叫衛長子,衛青的姐姐衛子夫在平陽公主家得到了皇帝的臨幸,所以衛青也就随母姓衛,取字仲卿。衛長子更改字為衛長君。衛長君的母親叫衛媪。衛媪的長女名叫衛孺,次女名叫少兒,三女就是衛子夫。後來,衛子夫的弟弟步、廣都姓衛氏。
衛青是平陽侯家的仆人,小的時候回到父親鄭季家裡,他父親讓他牧羊。鄭季前妻生的兒子們都把他當作奴仆來對待,不把他算作兄弟。衛青曾經跟人來到甘泉宮的居室,有個脖子上戴着鐵枷的犯人給衛青相面說:“你是個貴人,将來能當大官,封侯!”衛青笑一笑說:“我是被奴役的人所生的孩子,能不挨他人打罵就心滿意足了,怎能想到封侯的事呢!
衛青長大後,當了平陽侯家的騎兵,時常跟随平陽公主。漢武帝建元二年(前139)的春天,衛青的姐姐衛子夫進入皇宮,受到武帝的寵幸。皇後是堂邑大長公主的女兒,沒有兒子,善妒。大長公主聽說衛子夫受到漢武帝的寵愛,并且懷有身孕,感到非常嫉妒,于是派人去逮捕衛青。衛青當時在建章宮供職,還沒有什麼名氣。大長公主逮捕了衛青,并想殺死他。衛青的朋友騎郎公孫敖與一些壯士前去将衛青解救出來,因此才幸免于難。皇帝得知此事後,召見了衛青,并任命他為建章監和侍中。同時,衛青的同母兄弟們也得到了顯貴的地位,數日之間,衛青的賞賜就累積到了千金。孺嫁給了太仆公孫賀(朱安世被捕成功,卻在獄中上書誣告公孫敬聲與陽石公主私通以及行巫蠱詛咒天子之事,純純冤枉,不過這哥們沒啥戰功)。衛少兒過去與陳掌有私情,漢武帝召見并提升了陳掌的官職。公孫敖也因此而更加顯貴。衛青的姐姐衛子夫被立為夫人,衛青本人則擔任了太中大夫的職位。
元光五年(公元前130年),衛青擔任車騎将軍,率軍攻打匈奴,從上谷郡(河北省張家口市懷來縣)出兵;太仆公孫賀擔任輕車将軍,從雲中郡(今内蒙古托克托縣附近)出兵;大中大夫公孫敖擔任騎将軍,從代郡(今河北省蔚縣附近)出兵;衛尉李廣擔任骁騎将軍,從雁門(今山西省忻州市代縣縣城)出兵:每支軍隊各有一萬騎兵。衛青率軍到達茏城(亦稱“龍城”,是古代匈奴的政治中心地,位于今蒙古國中部地區),斬殺了數百名敵人。騎将軍公孫敖損失了七千名騎兵;衛尉李廣被敵人活捉,後來逃脫回來。根據軍法,他們都應當被處斬,但後來通過出錢贖罪,被貶為平民。公孫賀也沒有立下功勞。
元朔元年(前128)春天,衛子夫生了男孩,被立為皇後。這年秋天,衛青當車騎将軍,從雁門出境,率領三萬騎兵攻打匈奴,斬殺敵人幾千人。第二年(公元前127),匈奴入侵并殺害了遼西郡(遼甯朝陽市)太守,擄掠了漁陽郡(北京市懷柔區)的二千多人,擊敗了韓安國(禦史大夫,漢武政權中心的人物,公元前127年之後,抑郁去世)所率的漢軍。漢朝廷命令将軍李息(戰功赫赫的)率軍攻打匈奴,李息從代郡出兵;同時,命令車騎将軍衛青從雲中郡出兵,向西一直推進到高阙(内蒙古自治區巴彥淖爾盟杭錦後旗,西北的一個古代軍事要塞)。于是攻取了河南地區,直到隴西(甘肅定西),捕獲敵人幾千名,繳獲牲畜十萬頭,打跑了白羊王和樓煩王。皇帝就把河南地區改設為朔方郡,并劃定三千八百戶封衛青為長平侯。衛青的校尉蘇建有軍功,朝廷也劃定一千一百戶封蘇建為平陵侯,并派蘇建修築朔方城。衛青的校尉張次公有軍功,被封為岸頭侯。
天子說:“匈奴違背天理,擾亂人倫,欺淩長輩,虐待老人,專以盜竊為事,欺詐各個蠻夷之國,策劃陰謀,憑借其武力,屢次侵害漢朝邊境,因此朝廷調動軍隊,派遣将領,去讨伐他們的罪惡。《詩經》上不是說嗎:‘征讨狁,直到太原’,‘出征的戰車,萬馬奔騰’,‘修築那座朔方城’。如今車騎将軍衛青越過西河地區,直到高阙,斬殺敵軍二千三百人,繳獲他們的全部戰車、辎重和牲畜,已被封為列侯,于是往西平定了河南地區,巡行榆谿的古代要塞,越過梓領,架設北河的橋梁,讨伐蒲泥,攻破符離,斬殺敵人的輕捷精銳的士卒,捕獲敵人的偵察兵三千零七十一人,捉到敵人的間謀,割下死敵的左耳以計功勞,趕回敵人的一百多萬隻馬、牛和羊,保全大軍,勝利回師,增封衛青三千戶。”
第二年(公元前126年,元朔三年),匈奴侵入邊境,殺死代郡太守共友,侵入雁門,搶掠一千餘人。第二年(公元前125年,元朔四年),匈奴大規模入侵代郡、定襄、上郡、斬殺搶掠漢朝百姓幾千人。