After going down at home to Spain on Saturday, the English were out to end off their international break on a high.
Although, the Swiss got a big chance to punish them for poor defending but Xherdan Shaqiri shot wide from a one-on-one position with an on-rushing Jack Butland on six minutes.
England were soon out of their shell and pressed at the other end too, after Eric Dier headed wide off a low free-kick by Trent-Alexander Arnold.
It was the Swiss with all the earlier chances, as Fabian Schar fired wide from close range after a good work from the World Cup participants.
Marcus Rashford got ahead of Alexander-Arnold with the eye on goal, but flashed his effort way off target on 26 minutes.
The Swiss continued being troublesome, as Mario Gavranovic got behind the defence and into the box to go level with Butland but the keeper saved at the near post.
Closer to halftime, England created virtually their best chance but Yann Sommer denied Ruben Loftus-Cheek from close range.
At the restart, the Swiss returned with a double switch as Admir Mehmedi and Francois Moubandje made their way onto the field of play.
The Three Lions seized initiative on 54 minutes to go in front thanks to a finish at the far post from Rashford after being picked out by Kyle Walker.
After being pegged back, Switzerland struggled to reimburse the first half dominance that nearly saw them surge ahead.
England then made three straight changes, bringing on Jesse Lingard, John Stones and Harry Kane on 62 minutes.
Renowned for his defensive steel, John Stones was quickly into the thick of things, preventing Shaqiri from finding the net from close range.
A decent chance fell to Rashford to complete his brace seconds after following a set-up by Danny Rose, but he shot wide from inside the box.
Approaching full-time, the amount of clear-cut chances went dry as the hosts held on to collect the victory.