From June 1944 to May 1945, US, British, and Canadian troops fought an intense campaign against the might of the battle-hardened German Wehrmacht. The campaign ultimately ended in victory, as German forces in northern Europe surrendered, but the fighting was hard and there were many difficulties along the way and many problems to solve. The first task of the Allies was to land on a hostile shore in Normandy, where, under the direction of Erwin Rommel, the Germans had put up an array of obstacles to trap the invaders on the beaches. Just getting the troops ashore on D-Day was a massive achievement in itself, but then advancing from the beachheads against the experienced Panzer formations of the German Army Group West proved a harrowing task. Eventually, Omar Bradley's First Army fought its way out in Operation Cobra, opening the way for George Patton's Third Army to spearhead an advance to the Seine and recapture Paris while the British under Bernard Montgomery advanced up the Channel coast.The Allied advance stalled in autumn 1944, partly because of logistics problems but also because of the still redoubtable fighting qualities of the German Army, which showed at Arnhem that it was not to be treated lightly. The Germans launched a massive counterattack in the Ardennes in December 1944, an attack that for a time threatened to cut the Allies in two. After the defeat of the Ardennes offensive, the next great task for the Allies was crossing the mighty Rhine, which they did in a series of well planned and expertly executed moves early in 1945. The stage was now set for a general push into Germany, which saw mass German surrender as the western Allies linked up with Soviet forces coming from the east.