Stoke tore the visitors apart in the first 15 minutes, Swiss Shaqiri, known as “The Alpine Messi”, twice setting up Marko Arnautovic to score from close range.
The hosts missed chances to secure a more emphatic win and Austrian Arnautovic could have completed a hat-trick on the stroke of halftime but hit the post after being released by Shaqiri.
A lacklustre Manchester City were missing key players including striker Sergio Aguero and midfielder Yaya Toure due to injury.
Manuel Pellegrini's side lead the table on goal difference from Leicester City, who will go top with a win at Swansea City later on Saturday. Stoke climbed to ninth.
Fluent passing was difficult with strong winds swirling but playmaker Shaqiri showed quick feet and a speed of thought to twice open up a backline missing injured captain Vincent Kompany.
With Bojan Krkic also influential in the Stoke forward line, Mark Hughes's team continued to create opportunities but could not find another way past City goalkeeper Joe Hart who was back in the side after injury.
Manchester United host West Ham United and Arsenal entertain Sunderland later. Struggling champions Chelsea are at home to Bournemouth in the day's final game. – Reuters
Original source: Stoke stun listless City