Lainer speelde in de jeugd van SV Seekirchen en kwam in 2006 terecht in de jeugdopleiding van Red Bull Salzburg. Die club verhuurde hem in de zomer van 2011 aan SV Grödig. Na zijn terugkeer kwam hij bij het reserveteam van Red Bull terecht, FC Liefering. Na twee seizoenen in dat team verkaste Lainer definitief uit Salzburg. SV Ried werd zijn nieuwe werkgever.[1] Na één seizoen, waarin hij alle vierendertig competitiewedstrijden speelde als basisspeler, haalde Red Bull hem terug. Voor een bedrag van tweehonderdduizend euro maakte Lainer de overstap terug naar Salzburg, waar hij voor drie seizoenen tekende.[2] Zijn debuut in het eerste elftal van Red Bull maakte hij op 8 augustus 2015, toen met 2–2 gelijkgespeeld werd tegen Admira Wacker. Lainer mocht in dit duel van coach Peter Zeidler in de basis beginnen en hij speelde het gehele duel mee.[3] Zijn verbintenis werd in mei 2017 met vier seizoenen verlengd tot medio 2022.[4] In de zomer van 2019 verkaste Lainer voor circa twaalf miljoen euro naar Borussia Mönchengladbach, waar hij een contract ondertekende tot medio 2024.[5]