Первый штурм города начался 13 сентября мощной артиллерийской подготовкой при поддержке авиации. Враг превосходил в силах и средствах соединения 62-й и 64-й армий примерно в 1,5–2 раза, а по танкам — в 6 раз. Основные его усилия были направлены на захват центра города с выходом к Волге на участке напротив центральной переправы.
Бои в городе носили исключительно ожесточенный и напряженный характер и продолжались практически круглосуточно на улицах и площадях Сталинграда. Стойкости и упорству советских войск поражались даже генералы вермахта. Участник битвы под Сталинградом, немецкий генерал Г. Дерр позднее писал: «За каждый дом, цех, водонапорную башню, насыпь, стену, подвал и, наконец, за каждую кучу мусора велась ожесточенная борьба, которая не имела себе равных даже в период Первой мировой войны с ее гигантским расходом боеприпасов. Расстояние между нашими войсками и противником было предельно малым. Несмотря на массированные действия авиации и артиллерии, выйти из района ближнего боя было невозможно. Русские превосходили немцев в отношении местности и маскировки и были опытнее в баррикадных боях за отдельными домами: они заняли прочную оборону».
День 14 сентября вошел в героическую эпопею Сталинградской битвы как один из кризисных дней обороны. Особенно упорные бои развернулись в районе элеватора и вокзала Сталинград-2. Ценой больших потерь 15 сентября противник овладел господствующей в центральной части города высотой 102,0 — Мамаевым курганом. Однако уже на следующий день части 13-й гвардейской и 112-й стрелковых дивизий в результате ожесточенных боев отбили у врага высоту.
С 13 по 26 сентября противник сумел потеснить соединения и части 62-й армии и ворваться в центр города, а на стыке двух армий — 62-й и 64-й — выйти к Волге. Но овладеть всем берегом Волги в районе Сталинграда врагу не удалось. Особенно упорные бои развернулись за овладение вокзалом, который 13 раз переходил из рук в руки.
Ставка ВГК постоянно подкрепляла оборонявшиеся войска резервами из глубины страны. Так, только с 23 июля по 1 октября на Сталинградское направление прибыло 55 стрелковых дивизий, 9 стрелковых бригад, 7 танковых корпусов и 30 танковых бригад.
В связи с возросшим составом фронтов и большой протяженностью их полос Ставка ВГК 28 сентября упразднила единое командование Юго-Восточного и Сталинградского фронтов и переименовала Сталинградский фронт в Донской (командующий — генерал-лейтенант К. К. Рокоссовский), а Юго-Восточный — в Сталинградский (командующий — генерал-полковник А. И. Еременко).
Второй штурм Сталинграда враг предпринял с 28 сентября по 8 октября. Немецкое верховное командование категорически требовало от Паулюса взять Сталинград любой ценой и в самые ближайшие дни. Гитлер, выступая в рейхстаге 30 сентября 1942 г., заявил: «Мы штурмуем Сталинград и возьмем его — на это вы можете положиться… Если мы что-нибудь заняли, оттуда нас не сдвинуть».
Сражение под стенами Сталинграда развертывалось с неослабевающей силой. С 27 сентября по 4 октября происходили упорные бои на северных окраинах города за рабочие поселки Красный Октябрь и Баррикады. Одновременно враг вел наступление в центре города в районе Мамаева кургана (ему удалось закрепиться на западном склоне) и на правом фланге 62-й армии в районе Орловки. Темпы продвижения немецких частей в течение дня составляли от 100 до 300 м.
В первые дни октября 1942 г. соединения и части 62-й армии занимали оборону вдоль правого берега Волги в полосе шириной 25 км. При этом удаление переднего края от воды составляло на отдельных участках не более 200 м. Хотя в руках противника уже находилась территория пяти районов города из семи, ему так и не удалось овладеть центральной набережной с переправами, через которые в город поступали войска, вооружение, продовольствие, топливо и отправлялись раненые.
Германское верховное командование было крайне недовольно действиями 6-й армии в Сталинграде и торопило ее командующего как можно быстрее захватить весь город. В течение первой половины октября оно перебросило из Германии дополнительные силы для усиления 6-й армии: 200 тысяч пополнения, 30 артиллерийских дивизионов (около 1000 орудий), 40 инженерно-штурмовых батальонов, предназначенных для штурма города и ведения уличных боев. Над соединениями 62-й армии превосходство было создано в силах и средствах до 4–5 раз.
Третий, самый ожесточенный, с применением большого количества огневых средств штурм города начался 14 октября. Соединения и части 62-й армии, даже разделенные друг от друга противником, продолжали оборонять полосу, вытянутую вдоль набережной Волги. 138-я стрелковая дивизия (командир дивизии — полковник И. И. Людников), отрезанная от главных сил армии, удерживала полосу вдоль берега по фронту 700 м и в глубину 400 м. В составе дивизии было всего 500 человек личного состава.