While Poland threatened early on, the first clear-cut opportunity went Slovakia's way after some great work down the left wing by Robert Mak.
Mak was closed down by two defenders, but pulled off a perfect nutmeg to free himself of the pressure and bear down on goal.
Mak rifled a shot towards the near post and the ball wound up in goal after deflecting off a defender's foot and the back of Wojciech Szczesny's arm.
Both teams continued to produce chances as Juraj Kucka saw his header saved before Grzegorz Krychowiak hammered an effort from distance over the bar for Poland.
Poland's star man, Robert Lewandowski, was largely kept quiet and only saw one half-chance towards the end of the half that he skewed wide.
However, the second half provided plenty of action. Within seconds of the restart, Karol Linetty bundled in an equalizer after a beautifully worked move by Poland. Linetty had another chance five minutes later but his left-footed prod was comfortably saved by Martin Dubravka.
Grzegorz Krychowiak becomes first player to be sent off at Euro 2020
Poland were clearly in the ascendancy, but a red card turned the game on its head. Krychowiak, who had received a yellow card for a silly foul in the first half, was sent off for a second bookable offense in the 62nd minute.
Slovakia capitalized and took the lead once again in the 69th minute when Skriniar tucked his shot away into the bottom corner after Marek Hamsik's flick-on.
Slovakia were able to withstand a late Polish onslaught to seal a 2-1 win and pick up the three points.
In their next Euro 2020 game, Slovakia will take on Sweden, whilst Poland face Spain.