1924年2月,23岁的徐向前和山西老乡白龙亭、孔兆林、赵永贞、郭树云等人乘坐火车去上海报考黄埔军校,黄埔军校当时在广州,那么为何他们要去上海呢?因为黄埔军校当时面向全国招收学生,在上海专门设立了一个办事处,负责北方报考者的招收。
上海的黄埔军校招生处对北方的报名者进行了初试,由于当时是黄埔军校第一次招生也迫切的需要人才,所以初试很简单,徐向前和同去的十几个山西老乡都通过了。上海办事处给初试通过的人都发了路费,让去广州参加复试。
徐向前等人乘坐轮船到了广州,休息几日后在广东高等师范学校进行了考试,数学题最难不少人都交了白卷,徐向前也考的不理想,大家都非常忐忑,担心白来一趟,不过放榜的时候徐向前和十几个山西老乡都被录取了,原来录取时定的原则是考虑到报名的都是热血青年,所以能录取的尽量都录取了。

严格的说黄埔军校一期是一个速成班,主要原因还是当时急需军事人才,按照常规进行几年的学习也是不现实的,1924年6月16日,黄埔军校正式举行了开学典礼,而到了第二年的2月,这些一期的学生们就参加了第一次东征陈炯明,当时的黄埔生都是热血青年,作战非常勇敢,明显不同于旧军队。
1925年9月6日,徐向前从黄埔军校毕业,当时的毕业生共449人,毕业后徐向前留在学校任排长,不久他又被派到了北方的冯玉祥部工作。冯玉祥当时思想比较进步,他和广州方面的关系也很好,为了改变部队旧军队的习气他对黄埔生前来工作也是比较支持的。
为何是徐向前和白龙亭、孔兆林等山西人被派去?一方面是徐向前和几个老乡商议后,认为他们都是北方人所以向校方申请去冯玉祥部工作;另一方面,广州方面也希望冯玉祥的国民军能有一些黄埔生工作,所以马上批准了徐向前等人的请求。
国民军的主力是三个军,冯玉祥任国民军总司令兼第一军军长,胡景翼任副司令兼第二军军长,孙岳任副司令兼第三军军长。徐向前被派去了第二军,他去的时候胡景翼病逝,该军军长由师长岳维峻接任。
国民军有三个军,第一军是冯玉祥的基本部队,战斗力和军纪尚可,第二军和第三军战斗力差,尤其是岳维峻接任第二军军长后,大肆扩充部队,收编了许多土匪武装。部队一度扩充到20万,但是这些部队空有数量质量极差、
徐向前到第二军的第六混成旅二团当团副,国民军的团副地位并不高也没有实权,并非一些人认为的是副团长,实际上团副就是团长副官的简称,团副是不可能代行团长职权的,也很少有外放担任营长、连长的。在国民军的这段日子,徐向前其实并没有多少事干也没有部队可以指挥。
1925年10月,浙江督办孙传芳发动浙闽苏皖赣五省联军讨伐张作霖,冯玉祥和孙传芳结盟,两人约定徐州以南的沪苏皖地区由孙传芳部攻取,徐州以北之山东、直隶地区由冯玉祥部攻取。11月张作霖和冯玉祥正式决裂交战,冯玉祥令岳维峻率第二军攻取山东。
岳维峻的部队扩充到了20万,单看数量确实是一支庞大的部队,他踌躇满志之下分兵同时攻打山西和山东,结果山西一路被阎锡山击败,山东一路被张作霖、吴佩孚联军击败,二十万大军顷刻间土崩瓦解,岳维峻兵败逃到山西成了阎锡山的阶下囚。徐向前所在的团被张作霖部的骑兵击溃,团里的兵士四散奔逃。
徐向前眼见岳维峻的部队军无斗志,一触即溃,非常的失望,他和几个同乡一气之下离开了国民军回到了山西老家。在国民军不到一年的军事生涯,使徐向前彻底认清了旧军队,也让他的思想发生了深刻的转变。