Јутро 23. октобра је било магловито и није било могуће квалитетно извиђање. На српском левом крилу извиђачи су приметили покрете 17. низамске дивизије, али су их погрешно идентификовали као турску батерију која се повлачи из села Страцина. Трупе 18. пука Дунавске дивизије првог позива које су кренуле да их заробе су потиснуте, као и извиђачи Коњичке дивизије. Када је приметио српско повлачење, Зеки паша је закључио да је српско лево крило слабо. Пошто Друга армија није деловала из правца Страцина, одлучио је да нападне. Пети и Шести корпус је у 11:00, уз артиљеријску подршку, напао положаје Дунавске дивизије првог позива. Ускоро су 13. и 17. низамска дивизија натерале 18. пук на хаотично повлачење, али уместо да настави са нападом, Зеки паша је чекао на долазак Штипске редифске дивизије из позадине, изгубвши иницијативу и омогућивши растројеним батаљонима Дунавске дивизије првог позива да се среде и организују одбрану. То је омогућило српском 7. пуку да притекне у помоћ угроженом 18. пуку и консолидује одбрану. Убрзо је на бојиште стигао српски 8. пук, што је омогућило 7. пуку да на левом крилу ојача одбрану Сртевице коју је нападала Штипска редифска дивизија. На десном крилу Дунавске дивизије првог позива њен 9. пук је зауставио напредовање ослабљене Битољске редифске дивизије. Око 12:00, Седми корпус је почео да напада положаје Моравске дивизије првог позива. Српска пешадија и артиљерија је већ била распоређена за борбу, јер је артиљеријска ватра са истока указивала да је битка почела. После првобитног турског продора, српске снаге су кренуле у контранапад и вратиле их на полазне положаје. После тога, турске снаге су остатак дана биле задржаване добро организованом српском ариљеријском паљбом. Српске јединице другог ешалона ([[Дунавска дивизија другог позива] иза Дунавске дивизије првог позива, и Тимочка дивизија другог позива на десном крилу, иза Моравске дивизије првог позива) и армијска артиљерија нису били обавештени о овим сукобима. Они су остали у позадини и нису учествовали у првом дану битке. Дринска дивизија првог позива, која се налазила на Никуљанским висовима, у центру армијског положаја није учествовала у борби, с обзиром да су Турци нападали армијска крила. Само је њена артиљерија помагала одбрану 9. пука, на десном крилу Дунавске дивизије првог позива. Команда Прве армије није имала тачне информације о бици и није утицала на њу. И поред тога, напад турске војске од 23. октобра није био успешан.
„Иако вођена без плана и без утицаја команде армије, која никада није имала везу са дивизијама, одбрана је успела да одбије напад надмоћнијих снага непријатеља захваљујући крајњем пожртвовању трупа и нижих старешина, посебно Дунавске дивизије првог позива, која је поднела највећи терет битке и претрпела тешке губитке.“
Команда Прве српске армије није била свесна стратешке ситуације на бојишту, и даље сматрајући да се већина турске војске налази на Овче пољу. Претпостављали су да су турске снаге северно од Куманова само претходница и стога су наредили својим снагама да наставе напредовање ка југу. После поноћи добили су извештај Дунавске дивизије првог позива да су их напале јаке непријатељске снаге и да су претрпели тешке губитке. Тада је било превише касно да се мењају претходна наређења. На турској страни, Зеки паша је одлучио да настави са нападом надајући се да ће његове трупе моћи да остваре победу до сутрадан. Турски напад је почео око 5:30 са њиховог десног крила. Шести корпус је требао да веже што више српских снага нападајући их спреда, док је Штипска редифска дивизија требала да нападне са бокова. Дунавска дивизија првог позива је била под великим притиском, али је око 10:00 пристигло појачање из Дунавске дивизије другог позива. Истовремено се Коњичка дивизија пребацила на леву обалу Пчиње и успорила напредовање турске војске ка Сртевици. Делови Дунавске дивизије другог позива су око 12:00 појачали одбрану Сртевице, чиме је дефинитивно заустављено напредовање турског десног крила. На левом крилу турске армије много резервиста из Скопљанске редифске дивизије је дезертирало када су чули да је српска Трећа армија заузела Приштину и да маршира ка Скопљу, јер се ова дивизија попуњавала резервистима са територије Косова. И поред тога, Седми корпус је почео напад око 5:30. Моравска дивизија првог позива је кренула у противнапад у 6:00. Са доласком Тимочке дивизије другог позива из другог ешаона цело турско лево крило је натерано на повлачење. Око 9:30, Дринска дивизија првог позива, која је у ствари била у центру распореда Прве армије, али је била нешто повучена у односу на Дунавску дивизију првог позива, почела је напад на турски центар. Око 11:00, Битољска редифска дивизија је почела да се повлачи. Командант Шестог корпуса је успео да последњим резервама привремено заустави српско напредовање, али је у контранападу Дринска дивизија првог позива, односно њен 6. пешадијски пук, заузела Зебрњак, кључ турских положаја. Тиме је на повлачење принуђена 17. низамска дивизија. Скопска и Битољска редифска дивизија су се већ раније повукле, тако да је битка одлучена. У 15:00, Моравска дивизија првог позива ушла је у Куманово. Турске снаге су се повлачиле у нереду: Седми и делови Шестог корпуса ка Скопљу, а Пети и делови Шестог корпуса ка Штипу и Велесу. Српске снаге су пропустиле прилику да крену у прогон за њима.
Турска Вардарска армија се борила по плану, али упркос томе, доживела је тежак пораз. Иако је Зеки паша оперативно изненадио српску команду својим изненадним нападом, одлука да се нападне снажнији непријатељ била је озбиљна грешка која је одлучила исход битке. На другој страни, српска команда је почела битку без планова и припрема. Пропуштена је прилика да се крене за пораженим непријатељем и тако ефективно окончају операције у Вардарској Македонији, иако су постојале свеже трупе које су то могле да спроведу. Српска команда је још после битке била у уверењу да се борила са слабијим турским јединицама и да се главне непријатељске снаге налазе на Овче пољу. И поред тога, Битка код Куманова била је одлучујући фактор у исходу рата у Македонији. Турски план да воде офанзивни рат је пропао, а Вардарска армија је натерана да напусти значајну територију. Уз то је изгубила велики број артиљеријских оруђа која није могла да надокнади јер су путеви снабдевања из Анатолије били пресечени. Вардарска армија није успела да организује одбрану на реци Вардар, напустила је Скопље, и повукла се према Прилепу. Прва српска армија је полако напредовала ка Скопљу и ушла у град 26. октобра. Два дана касније ојачала ју је и Моравска дивизија другог позива, док је остатак Треће армије кренуо ка Метохији и преко северне Албаније ка обали Јадранског мора. Друга армија је послата да помогне Бугарима у опсади Једрена, док се Прва армија припремала за офанзиву ка Прилепу и Битољу.
„Иако вођена без плана и без утицаја команде армије, која никада није имала везу са дивизијама, одбрана је успела да одбије напад надмоћнијих снага непријатеља захваљујући крајњем пожртвовању трупа и нижих старешина, посебно Дунавске дивизије првог позива, која је поднела највећи терет битке и претрпела тешке губитке.“
Команда Прве српске армије није била свесна стратешке ситуације на бојишту, и даље сматрајући да се већина турске војске налази на Овче пољу. Претпостављали су да су турске снаге северно од Куманова само претходница и стога су наредили својим снагама да наставе напредовање ка југу. После поноћи добили су извештај Дунавске дивизије првог позива да су их напале јаке непријатељске снаге и да су претрпели тешке губитке. Тада је било превише касно да се мењају претходна наређења. На турској страни, Зеки паша је одлучио да настави са нападом надајући се да ће његове трупе моћи да остваре победу до сутрадан. Турски напад је почео око 5:30 са њиховог десног крила. Шести корпус је требао да веже што више српских снага нападајући их спреда, док је Штипска редифска дивизија требала да нападне са бокова. Дунавска дивизија првог позива је била под великим притиском, али је око 10:00 пристигло појачање из Дунавске дивизије другог позива. Истовремено се Коњичка дивизија пребацила на леву обалу Пчиње и успорила напредовање турске војске ка Сртевици. Делови Дунавске дивизије другог позива су око 12:00 појачали одбрану Сртевице, чиме је дефинитивно заустављено напредовање турског десног крила. На левом крилу турске армије много резервиста из Скопљанске редифске дивизије је дезертирало када су чули да је српска Трећа армија заузела Приштину и да маршира ка Скопљу, јер се ова дивизија попуњавала резервистима са територије Косова. И поред тога, Седми корпус је почео напад око 5:30. Моравска дивизија првог позива је кренула у противнапад у 6:00. Са доласком Тимочке дивизије другог позива из другог ешаона цело турско лево крило је натерано на повлачење. Око 9:30, Дринска дивизија првог позива, која је у ствари била у центру распореда Прве армије, али је била нешто повучена у односу на Дунавску дивизију првог позива, почела је напад на турски центар. Око 11:00, Битољска редифска дивизија је почела да се повлачи. Командант Шестог корпуса је успео да последњим резервама привремено заустави српско напредовање, али је у контранападу Дринска дивизија првог позива, односно њен 6. пешадијски пук, заузела Зебрњак, кључ турских положаја. Тиме је на повлачење принуђена 17. низамска дивизија. Скопска и Битољска редифска дивизија су се већ раније повукле, тако да је битка одлучена. У 15:00, Моравска дивизија првог позива ушла је у Куманово. Турске снаге су се повлачиле у нереду: Седми и делови Шестог корпуса ка Скопљу, а Пети и делови Шестог корпуса ка Штипу и Велесу. Српске снаге су пропустиле прилику да крену у прогон за њима.
Турска Вардарска армија се борила по плану, али упркос томе, доживела је тежак пораз. Иако је Зеки паша оперативно изненадио српску команду својим изненадним нападом, одлука да се нападне снажнији непријатељ била је озбиљна грешка која је одлучила исход битке. На другој страни, српска команда је почела битку без планова и припрема. Пропуштена је прилика да се крене за пораженим непријатељем и тако ефективно окончају операције у Вардарској Македонији, иако су постојале свеже трупе које су то могле да спроведу. Српска команда је још после битке била у уверењу да се борила са слабијим турским јединицама и да се главне непријатељске снаге налазе на Овче пољу. И поред тога, Битка код Куманова била је одлучујући фактор у исходу рата у Македонији. Турски план да воде офанзивни рат је пропао, а Вардарска армија је натерана да напусти значајну територију. Уз то је изгубила велики број артиљеријских оруђа која није могла да надокнади јер су путеви снабдевања из Анатолије били пресечени. Вардарска армија није успела да организује одбрану на реци Вардар, напустила је Скопље, и повукла се према Прилепу. Прва српска армија је полако напредовала ка Скопљу и ушла у град 26. октобра. Два дана касније ојачала ју је и Моравска дивизија другог позива, док је остатак Треће армије кренуо ка Метохији и преко северне Албаније ка обали Јадранског мора. Друга армија је послата да помогне Бугарима у опсади Једрена, док се Прва армија припремала за офанзиву ка Прилепу и Битољу.