1944: The Red Army’s summer offensive
Lwów–Sandomierz offensive
- Dates:
- 13 July – 29 August 1944
- Front:
- Eastern Front
- Location:
- Eastern Galicia (Brody, Rava-Ruska, Lwów, Stanisławów, Przemyśl), south-eastern Poland between the San and the Vistula (Jarosław, Rzeszów, Mielec) and the Baranów–Sandomierz bridgehead on the west bank of the VistulaOn the battle map →
- Sides:
- Soviet UnionIvan Konev, Georgy ZhukovNazi Germany and HungaryJosef Harpe, Walter Model
- Result:
- Soviet victory. The 1st Ukrainian Front destroyed XIII Army Corps at Brody, took Lwów, Stanisławów and Przemyśl, split Army Group North Ukraine in two and established the Baranów–Sandomierz bridgehead on the Vistula, which it held despite German counter-attacks. German losses are estimated at about 137,000 men (350,000 according to Soviet communiqués), Soviet losses at about 289,000 killed, missing and wounded.
- Author:
- Łukasz

The Lwów–Sandomierz offensive (Russian Львовско-Сандомирская операция) was the summer offensive of Marshal Ivan Konev’s 1st Ukrainian Front against Colonel General Josef Harpe’s German Army Group North Ukraine. It began on 13 July 1944, three weeks after the start of Operation Bagration in Belorussia, and lasted until 29 August. Within the first ten days Soviet troops broke through the German defences on two axes – towards Rava-Ruska and towards Lwów (Lviv) – and encircled the German XIII Army Corps, together with the 14th SS Grenadier Division “Galizien”, near Brody. By the end of July they had taken Lwów, Stanisławów (Ivano-Frankivsk) and Przemyśl and crossed the San, and on 29 and 30 July they forced the Vistula at Baranów. Throughout August fighting raged over the bridgehead on the west bank of the river, which the Germans tried in vain to eliminate.
The offensive drove the Germans out of the south-eastern lands of pre-war Poland – the former provinces of Lwów, Stanisławów and Tarnopol, which the Soviet Union regarded as part of the Ukrainian SSR within its 1941 borders – and then out of the territory between the San and the Vistula. For Poles its most dramatic episode was Operation Tempest in Lwów: soldiers of the Home Army fought for the city alongside the Red Army, and a few days after it was taken their commanders were arrested.
Name and dates
The name comes from the operation’s two main objectives: Lwów, the largest city of Eastern Galicia, and Sandomierz on the Vistula, near which the bridgehead was established. Soviet historiography counted it among the so-called ten Stalinist blows of 1944 and divided it into three parts: the Lwów and Stanisławów operations (13–27 July) and the Sandomierz operation (28 July – 29 August). Polish studies also speak of the operation on the Baranów–Sandomierz bridgehead, named after Baranów Sandomierski, where the Red Army first crossed the Vistula.
The start is taken to be 13 July 1944, when the northern wing of the front went over to the attack on the Rava-Ruska axis. On the Lwów axis, according to some sources, the main blow began a day later, on 14 July. The end date – 29 August – is the day on which the 1st Ukrainian Front went over to the defensive on the lines it had reached; Soviet and Polish studies agree on this date. The fighting for the bridgehead did not stop at once, however: the last German counter-attack near Opatów came on 30 August, and the front stabilised at the beginning of September.
Background
In the spring of 1944 the three Ukrainian Fronts drove the Germans out of most of Ukraine west of the Dnieper. During the offensive in Right-Bank Ukraine the Red Army reached the Dniester, the Prut and the foothills of the Carpathians, and since January its troops had already been standing on pre-war Polish territory. In April the front came to a halt on a line running west of Kovel, Tarnopol (Ternopil) and Kolomyia. Facing the 1st Ukrainian Front was Army Group North Ukraine, formed at the end of March from the remnants of Army Group South and placed under Field Marshal Walter Model.
Behind it lay Eastern Galicia and Lwów, which the Soviet Union had seized in September 1939 during its invasion of Poland, and which the Germans incorporated into the General Government in 1941. Three years of occupation brought the annihilation of almost the entire Jewish community, the murder of members of the Polish intelligentsia – such as the murder of the Lwów professors – and a bloody Polish–Ukrainian conflict which, after the Volhynia massacres, spread into Galicia. The Polish government in London regarded these lands as part of the Polish Republic; Joseph Stalin treated them as part of the USSR, and at the Tehran Conference the Western Allies had accepted the Curzon Line in principle as the future border.
The German command expected the main Soviet blow of summer 1944 to fall precisely here, from Ukraine towards Lublin, Warsaw and the Baltic, or into the Balkans. Most of the panzer divisions on the Eastern Front were therefore concentrated in Army Group North Ukraine. When Bagration began on 22 June, this proved to have been a mistake. On 28 June Model took over command of the disintegrating Army Group Centre, and his place was taken by Josef Harpe, until then commander of the 4th Panzer Army (according to some sources Model formally retained command of both army groups for a few more weeks). One panzer division after another left for Belorussia, so that by mid-July Harpe had only a few of them left.
Even so, the German defences in Galicia were strong. The army group consisted of Colonel General Erhard Raus’s 1st Panzer Army, General Walther Nehring’s 4th Panzer Army and the Hungarian First Army, which defended the Carpathian foothills. According to Soviet figures it had about 40 divisions, several of them armoured and motorised, and up to 900,000 men and 900 tanks and assault guns in the 1st Ukrainian Front’s sector. Western historians give markedly lower figures – about 400,000 men and just over 400 tanks and assault guns. Air support came from Luftflotte 4 with some 700 aircraft. The Germans had prepared three defensive zones with a total depth of 40–50 kilometres; the third rested on the Bug and the Hnyla Lypa.
Since May 1944 the 1st Ukrainian Front had been commanded by Ivan Konev, who had succeeded Georgy Zhukov in the post. As representative of the Stavka, Zhukov coordinated the operations of the Belorussian Fronts that summer, and in July those of the 1st Ukrainian Front as well. Konev’s front was the largest operational formation the Red Army had yet fielded: according to Soviet figures it numbered about 1.2 million men (other calculations put it at about a million), nearly 14,000 guns and mortars, some 2,200 tanks and self-propelled guns and over 2,800 aircraft of the 2nd Air Army. It comprised seven combined-arms armies, three tank armies and two cavalry-mechanised groups, as well as the 1st Czechoslovak Army Corps.
Plan and preparations
Konev proposed two thrusts that were to split Army Group North Ukraine and encircle its forces around Brody. The northern thrust, towards Rava-Ruska, was to be made by General Vasily Gordov’s 3rd Guards Army, General Nikolai Pukhov’s 13th Army and General Mikhail Katukov’s 1st Guards Tank Army with a cavalry-mechanised group. The southern thrust, from the Tarnopol area towards Lwów, was entrusted to General Pavel Kurochkin’s 60th Army and General Kirill Moskalenko’s 38th Army, backed by General Pavel Rybalko’s 3rd Guards Tank Army and General Dmitry Lelyushenko’s 4th Tank Army. On the left wing, General Andrei Grechko’s 1st Guards Army and the 18th Army were to advance on Stanisławów and pin down enemy forces at the foot of the Carpathians.
Konev recalled after the war that Stalin had preferred a single powerful thrust straight at Lwów, accepted the plan for two thrusts with evident distrust and agreed to it only after a long discussion, making it clear that the front commander would answer for the outcome personally. According to the Polish study by Bolesław Dolata, the front command approved the final plan of the operation on 10 July.
Preparations had been under way since April. In the rear, roads, railway lines and bridges were repaired, and divisions were brought up to strength in men and equipment. According to Soviet figures, up to 240 guns and mortars per kilometre of front were massed in the breakthrough sectors. Great attention was paid to deception: a concentration of troops was simulated around Stanisławów, in the Carpathian foothills, and the air force built a network of more than 30 dummy airfields with mock aircraft, which – according to a Soviet analysis – attracted most of the German air raids in June and early July. Behind the German lines Soviet partisan formations were operating; in the preceding months they had attacked the Lwów–Warsaw and Rava-Ruska–Jarosław railway lines.
On the Rava-Ruska axis Soviet air reconnaissance detected that the Germans were beginning to pull troops back from the first defensive zone to the second to avoid losses to artillery. Konev then decided to bring the attack forward and strike without a lengthy artillery preparation, so as to give the enemy no time for an orderly withdrawal.
Course: breaking through the front (13–18 July)
On 13 July the northern wing of the front went over to the attack in the area of Horokhiv in Volhynia. The blow fell on units that were in the act of withdrawing, and the 3rd Guards Army and 13th Army quickly broke through the first defensive zone; by 15 July they had advanced to a depth of about 20 kilometres. The Germans threw the 16th and 17th Panzer Divisions from reserve into a counter-attack, but failed to stop the advance on the second zone. On 16 July Konev committed the cavalry-mechanised group, and the next morning the 1st Guards Tank Army. By the end of 16 July the entire tactical zone of the German defences on the Rava-Ruska axis had been broken to a depth of 15–30 kilometres, and on 17 July the Soviet spearheads crossed the Bug.
On the Lwów axis the attack of the 60th and 38th Armies met much stiffer resistance. On 15 July the Germans counter-attacked from the area of Pluhiv and Zboriv with the 1st and 8th Panzer Divisions of III Panzer Corps and pushed the Soviet troops back a few kilometres. The 8th Panzer Division, moving in columns along the main road against orders, suffered heavy losses in the process from Il-2 ground-attack aircraft. Konev directed most of the front’s air power and artillery to this sector.
Meanwhile the 60th Army punched a narrow gap in the German defences near the village of Koltiv, north-west of Tarnopol. According to Soviet accounts the corridor was only 4–6 kilometres wide and about 18 kilometres long, and was under fire from both sides. Nevertheless, on 16 July Konev sent Rybalko’s 3rd Guards Tank Army into it, and on 17 July the whole of Lelyushenko’s 4th Tank Army. Soviet historiography regarded the commitment of two tank armies through so narrow a gap, while counter-attacks were being repulsed on the flanks, as without precedent in the entire war. The tanks broke through to the west and turned north, towards the units of the 1st Guards Tank Army advancing from Rava-Ruska.
On 18 July the pincers closed near Busk on the Bug. The German defences had been broken on a front of about 200 kilometres and to a depth of 50–80 kilometres. Encircled west of Brody was General of Infantry Arthur Hauffe’s XIII Army Corps – several infantry divisions, Corps Detachment C and the 14th SS Grenadier Division “Galizien”. Estimates of the number of men trapped vary, most often from 30,000 to 45,000. Hauffe, convinced that III Panzer Corps would manage to restore the front, did not issue the order to withdraw in time.
Course: the Brody pocket (18–22 July)
The “Galizien” Division had been formed in 1943 from volunteers recruited among the Ukrainians of the District of Galicia. Some Ukrainian political circles saw it as the nucleus of a future national army; the Germans saw it as one more formation to fight the Red Army. From the volunteers who came forward for the division the Germans also formed SS police regiments; an investigation by Poland’s Institute of National Remembrance (IPN) links one of them, the 4th SS Police Regiment, to the Huta Pieniacka massacre in February 1944. At the end of June the division, some 11,000 strong, was moved to Brody and placed in XIII Corps’s second line of defence. This was its first battle.
From 19 July the encircled units tried to break out to the south and south-west, towards Zolochiv. The weakened XLVIII and XXIV Panzer Corps struck at the ring from outside but could not break through. Harpe, faced with the loss of yet more forces, ordered the rest of his troops to retreat, leaving Hauffe’s corps to its fate. The pocket was under constant Soviet artillery fire and air attack; according to Soviet figures the 2nd Air Army flew about 2,500 sorties over the encircled troops in two days. On 22 July an attack by the 60th and 13th Armies split the pocket in two, and by evening organised resistance had ceased. General Hauffe was killed that day while attempting to break out (according to some sources, after he had already been taken prisoner).
Accounts of the pocket’s toll vary with the source. Soviet figures speak of about 30,000 killed and over 17,000 prisoners. German war diaries indicate that some 15,000 soldiers reached their own lines – in small groups, often without weapons. The “Galizien” Division was shattered: a group including its commander, SS-Brigadeführer Fritz Freitag, broke out, and historians estimate the total number of survivors of the encirclement at between about 1,500 and 3,500 men. Several thousand of the division’s soldiers were listed as missing – they had been killed in action, captured, or killed after being taken prisoner. Some of the stragglers joined the Ukrainian Insurgent Army. The division was rebuilt in the autumn of 1944 at the Neuhammer (Świętoszów) training ground in Silesia.
While the pocket was being liquidated, Soviet troops pressed westward. On 20 July the 6th Guards Rifle Division took Rava-Ruska. The spearheads of the 1st Guards Tank Army headed for the San, while the tank armies of Rybalko and Lelyushenko made for Lwów. Army Group North Ukraine had been cut in two: the 4th Panzer Army fell back north-west towards the Vistula, the 1st Panzer Army and the Hungarians south towards the Carpathians. Between them opened a gap almost 100 kilometres wide.
Course: Lwów and Operation Tempest (21–31 July)
On 18 July the German civil authorities left Lwów, and over the following days retreating Wehrmacht columns passed through the city. On the evening of 21 July the first Soviet scouts appeared outside the city, and on the morning of 22 July units of the 10th Guards Ural Volunteer Tank Corps of Lelyushenko’s army burst into it from the south-east. On the same day Home Army units joined the fighting; under Operation Tempest they were – as in Wilno (Vilnius) a few days earlier – to seize the city before the Red Army arrived and to meet it as the masters of the area. They were commanded by Colonel Władysław Filipkowski (“Janka”), commander of the Home Army’s Lwów Area.
The Soviet tank crews, lacking infantry of their own, readily accepted the help of the Polish units. Home Army soldiers wearing red-and-white armbands fought in Łyczaków and the city centre, covered the flank of the Soviet troops, carried out reconnaissance and occupied districts abandoned by the Germans; Polish flags appeared over the houses. The German garrison, reinforced by Panther tanks of the 8th Panzer Division, nevertheless put up a stubborn defence, and the attempt to take the city off the march with the tank armies alone failed. Konev decided to take Lwów with the infantry of the 60th and 38th Armies, and sent the 3rd Guards Tank Army north and west of the city, through Yavoriv, to cut off the Germans’ line of retreat. The street fighting lasted five days. On 27 July Soviet troops secured Lwów; on the night of 27/28 July, by then without Home Army participation, they took the last German artillery positions on Kortumowa Góra hill. According to Polish studies some 30 Home Army soldiers were killed and about 160 wounded in the fighting for the city.
Cooperation on the battlefield soon came to an end. On 26 July Filipkowski met Konev’s representative, a general who went by the name “Ivanov”, and agreed with him on the formation of the Home Army’s 5th Infantry Division. On 28 July, however, the Polish units in Lwów were disbanded and laid down their arms. On 30 July a rally was held in the city attended by Konev and Nikita Khrushchev, the leader of the Communist Party (Bolsheviks) of Ukraine; from the outset the Soviet authorities treated Lwów as a city of the Ukrainian SSR. On 31 July Filipkowski and a group of officers flew off for talks with General Michał Rola-Żymierski, commander of the Polish Army subordinated to the Polish Committee of National Liberation (PKWN). That same evening about 30 staff officers and commanders of the Lwów Home Army, summoned by the Soviet side to a “briefing on the formation of the division”, were disarmed and arrested by counter-intelligence and the NKVD in a building on Batorego Street. Filipkowski and the officers with him were arrested in Zhytomyr on the night of 2/3 August. The remaining Home Army soldiers were offered the chance to join General Zygmunt Berling’s army; some were conscripted, some arrested or deported deep into the USSR, and some managed to make their way west to the Rzeszów area, from where certain units later set out to help the fighting in Warsaw.
Course: the San and the crossing of the Vistula (23 July – 1 August)
After the destruction of the Brody pocket Konev concentrated his effort on the Lwów–Przemyśl axis and pushed the right wing of the front westward towards the San. By the end of 23 July the spearheads of the 1st Guards Tank Army had reached the San and seized bridgeheads north and south of Jarosław; Polish studies state that Soviet troops crossed the river near Leżajsk on 24 July. On the left wing the 1st Guards Army and 18th Army took Halych on 24 July and Stanisławów on 27 July. Przemyśl and Jarosław fell on the same day as Lwów. The German 1st Panzer Army withdrew along a corridor through Stryi and Drohobych towards the Carpathians, and the Hungarians abandoned the foothills and took up positions on the mountain ridges.
On 27 July the first stage of the operation came to an end. Army Group North Ukraine had been split in two, and in its centre yawned a gap through which the road to the Vistula lay open. On 28 July the Stavka ordered Konev to force the Vistula and seize a bridgehead in the Sandomierz area. Two days later, on 30 July, the 4th Ukrainian Front under Colonel General Ivan Petrov was created for operations in the Carpathians, taking over the 1st Guards Army and 18th Army from Konev. On 29 July Konev was made a Hero of the Soviet Union for the first time.
The 1st Guards Tank Army was ordered to reach the Vistula within twenty-four hours without getting drawn into fighting. Progress was hampered by the fact that the air force had been left far behind – the airfields could not keep up with the tanks. On the evening of 29 July the leading regiments of Major General Grigory Vekhin’s 350th Rifle Division of the 13th Army reached the Vistula near Baranów and began to cross; according to Polish studies the first to cross the river was a battalion of the 1178th Rifle Regiment. On 30 July the 3rd Guards Army reached the Vistula near Annopol and seized small bridgeheads on the far bank, but was unable to hold them. At Baranów the crossing went more smoothly: by 30 July ferries with a capacity of 30 and 50 tonnes were already operating, and on 31 July the main forces of Katukov’s army crossed to the west bank under cover of a smokescreen stretching more than ten kilometres along the river. The Germans tried to destroy the crossings with floating mines, without success. A counter-attack by the 17th Army towards Majdan on 31 July was repulsed, and by 1 August the bridgehead was already some 12 kilometres wide and 8 deep. A low-water bridge over the Vistula was opened on 5 August.
Course: the fighting for the Baranów–Sandomierz bridgehead (August)
The German command realised that the bridgehead across the Vistula threatened the whole defence of southern Poland and Silesia. Harpe received reinforcements: first five divisions, including one panzer division, from Army Group South Ukraine, and soon afterwards further German and Hungarian divisions, six assault-gun brigades and the 501st Heavy Panzer Battalion, equipped with the new King Tigers. From 1 August the Germans attacked concentrically from Mielec and Tarnobrzeg, on the east bank of the Vistula, to cut the bridgehead off from the crossings; on 3 August an attack on Baranów began. Konev threw in the front reserve – General Alexei Zhadov’s 5th Guards Army – which repulsed the attack and by 8 August had reached the Szydłów–Stopnica–Nowy Korczyn line. On 2 August Soviet troops took Rzeszów, and on 6 August Mielec. By 10 August the bridgehead had been widened to about 60 kilometres across and 50 deep. In the first days of August Soviet units, together with partisans of the Home Army, the Peasant Battalions and the People’s Army, even reached the outskirts of Skalbmierz and Busko, but this ground was soon lost.
On 11 August the Germans began a new series of counter-attacks from the west and north, towards Staszów and Osiek. Within a few days they had advanced 8–10 kilometres and recaptured Szydłów and Stopnica, but failed to break through to Baranów. On 13 August, in an attack towards Stopnica and Połaniec, they used King Tigers for the first time on the Eastern Front. The debut was a failure: near Oględów, Mokre and Szydłów the tanks of the 501st Battalion ran into an ambush laid by the 53rd Guards Tank Brigade and, according to Soviet figures, lost a dozen or more vehicles, three of which were captured in working order. One of them later went to the museum at Kubinka.
On 14 August the 3rd Guards Army and 13th Army attacked northwards from the Klimontów area and westwards from a small bridgehead near Zawichost, encircling the German garrison of Sandomierz. According to most sources the town was taken on 18 August (some studies give earlier dates). The base of the bridgehead widened to about 75 kilometres. The Germans made their last major attempt to eliminate it in the Łagów area, where two panzer corps were to encircle the Soviet troops. They succeeded in capturing the range of hills north-west of Opatów and driving 6–7 kilometres into the 13th Army’s defences, but a counter-offensive by three Soviet armies encircled and destroyed part of the German forces, including the 72nd and 291st Infantry Divisions. The last counter-attack near Opatów came on 30 August.
On the left wing of the front the 60th and 38th Armies were unable to develop their advance westward; on 23 August troops of the 60th Army and the 5th Guards Army took Dębica, and the 38th Army reached the Krosno area. The 4th Ukrainian Front advanced slowly through mountainous terrain: it took Stryi on 5 August and Drohobych on 6 August, and in mid-month halted its advance at the foot of the Carpathians. On 29 August the 1st Ukrainian Front went over to the defensive. The bridgehead was then about 120 kilometres long along the front and up to 50 kilometres deep – the largest Red Army bridgehead on the west bank of the Vistula. Many villages along the line of battle were burnt down, and in the autumn the Soviet authorities evacuated the population from a frontline belt 15–20 kilometres wide.
Losses
According to the compilation of Soviet losses prepared under the direction of Grigori Krivosheev, the 1st and 4th Ukrainian Fronts lost 65,001 killed, dead from other causes and missing, and 224,295 wounded and sick in the operation – a total of 289,296 men. According to the same data, 1,269 tanks and self-propelled guns, 1,832 guns and mortars and 289 aircraft were lost.
German losses are harder to establish. A communiqué of the Soviet Information Bureau of August 1944 spoke of 350,000 killed, wounded and captured, including 140,000 killed and over 32,000 prisoners, and of the destruction of almost 2,000 tanks and nearly 700 aircraft. Soviet historiography also claimed that eight German divisions had been completely destroyed and 32 had lost half or more of their strength. Estimates based on German reports and cited in German military historiography (among others by Karl-Heinz Frieser) put the losses of Army Group North Ukraine at around 137,000 men. The heaviest single blow was the Brody pocket, in which the whole of XIII Army Corps disappeared. There are no reliable figures for the losses of the Hungarian First Army.
Significance
The Lwów–Sandomierz offensive was, alongside Bagration, the second great Soviet blow of summer 1944, and it completed the liberation of Ukraine within its 1941 borders. In seven weeks the Red Army advanced up to 350 kilometres westward on a front some 440 kilometres wide and shattered Army Group North Ukraine, while the Germans lost Eastern Galicia with the Borysław oil basin – one of the last sources of oil left to them. The 1st Ukrainian Front came to rest on the Vistula, and its left wing at the foot of the Carpathians. Taken by surprise by the speed of the offensive, the Germans had to transfer reserves to Sandomierz from other sectors, including southern Ukraine, which weakened their defences in Romania just before the great Soviet offensive there in August.
The Baranów–Sandomierz bridgehead became the most important springboard for further operations in Poland. It was from here that the January offensive – the Vistula–Oder offensive – was launched on 12 January 1945, in which Konev’s troops took Kraków and Upper Silesia and reached the Oder. In the autumn of 1944 the 1st and 4th Ukrainian Fronts conducted the East Carpathian offensive across the Carpathians in support of the Slovak National Uprising.
For Poland the consequences of the operation were ambiguous. The offensive freed the lands between the Bug, the San and the Vistula from German occupation, but at the same time sealed the fate of Lwów and Eastern Galicia. The arrests of the Lwów Home Army commanders showed that – as in Wilno – the Soviet authorities had no intention of recognising the structures of the Polish Underground State. Lwów was incorporated into the Ukrainian SSR: this was decided by the secret agreement between the PKWN and the USSR of 27 July 1944, sealed at the Yalta Conference and confirmed by the border agreement of 16 August 1945. In 1944–1946 most of the Polish population of the city and the region had to leave for the west under the so-called repatriation, and in Galicia the UPA’s partisan war against Soviet rule went on for years. For Ivan Konev, success at Lwów and Sandomierz was one of the greatest victories of his career, and the bridgehead he held became the springboard for the march on Silesia and Berlin in 1945.
Places·Lwów·Stanisławów