If you count the Falklands Islands as British soil the last battle on British soil would have been the Falklands War Friday April 2nd 1982 - June 14th 1982
If you count the Falkland Islands as British soil, then sometime during the Falklands War of 1982.
There were many battles fought on Union soil. There was Gettysburg in Pennsylvania, Antietam /Sharpsburg fought in Maryland, and there was another Civil War battle fought in Vermont.
Antitiem or Sharpsburg
The American Relation
never again fought on Union soil
british and American
the battle of bosworth was the penultimate battle of the wars of the roses it was the civil war between the House of Lancaster and the House of York that raged across England it was fought on 22nd August 1485 the battle was won by the lancasters it was on of the three most important battles fought on british soil
There are at least three plausible answers. Sedgemoor (1685) was the last pitched battle between regular armies. Preston (1715) was a siege that turned into a battle in the streets, like Stalingrad. Clifton (1745) was a skirmish.In addition, the WW2 battles of Britain and London were fought over English soil, but not on it.
There were no official war on US soil (US being the states), other than the attack by the British which had the Capital burned. American Civil War of 1861!
In the US Civil War, almost all the battles were fought in the South.
The South fought fought major battles on northern soil at Antietam. Then there was the Battle of Chickamauga, the 3 Chattanooga Battles, and the Battle of Gettysburg