Sergash: <9.Qd2?> Simply 9.fxe5! Be6! (9...dxe5 10.Qd5! Bb4! 11.0-0-0! Nf6! 12.Bxf6 gxf6 13.Bc4! 0-0 ± Stockfish 9 - 64 bits POPCNT) 10.Bf4! dxe5 11.Qxe5! Qxe5▢ 12.Bxe5 0-0-0! ± Stockfish 9 - 64 bits POPCNT.<9...f6?! 10.Bh4 Be6! ⩲> 9...h6! 10.Bh4 exf4! (Δ 11...Qxf4?? 12.g5-+) 11.Nd5 Qxd2+▢ 12.Kxd2 Rb8▢ 13.Bf2 (Δ 14.Ba7 and 15.Nc7+ etc.) Be6 14.Nxf4= Stockfish 9 - 64 bits POPCNT.
<11.f5 Bf7 ⩲ / ±> Why release the tension now? 11.Bf2!? exf4! 12.Qxf4 Nh6! (12...Rc8 13.Be2 ⩲ / ± Δ 13...Rxc3?? 14.Qd2!▢ Rc5 15.b4+- winning) 13.Bd4! ⩲ / ± Stockfish 9 - 64 bits POPCNT.
<12.Bf2 Ne7 ⩲> Better is 12.Rd1! ⩲ Stockfish 9 - 64 bits POPCNT.
<13.b4?!> The calculated tactics in incorrect. 13.0-0-0! Rd8 13.Qe3! ⩲ / ± Stockfish 9 - 64 bits POPCNT.
<13...Qc7?!> 13...Qa3! 14.Rb1 (or immediately 14.Bb5+ Nc6▢ 15.0-0!▢ axb5! 16.Nxb5 Qa4▢ 17.Nc7+ Kd7▢ 18.Nxa8 Qxa8 19.a4!▢= Stockfish 9 - 64 bits POPCNT) Rc8▢ 15.Bb5!▢ axb5 16.Nxb5 Qa6▢ 17.Nxd6+ Qxd6▢ 18.Qxd6 Nd5▢ 19.Bxd5 Bxd5 20.exd5 Rxc2= Stockfish 9 - 64 bits POPCNT.
Not 13...Qxb4? 14.Rb1▢ Qa5▢ 15.Rxb7 Rc8▢ 16.Nd1! Nc6! 17.Qxa5! Nxa5 18.Ra7 ± might have been the line expected by Carlsen. Stockfish 9 - 64 bits POPCNT.
<14.b5?> Missing the beautiful 14.Bb5! axb5 15.Nxb5 Qc6 16.Nxd6+ Qxd6▢ 17.Qxd6 Nd5▢ 18.Qxd5! Bxd5 (or 18...Bxb4+?! 19.Ke2! Bxd5 20.exd5 ± Stockfish 9 - 64 bits POPCNT) 19.exd5 Rc8 ⩲ Stockfish 9 - 64 bits POPCNT.
<14...Nc8? 15.Rb1 ±> 14...d5! 15.Nxd5! Bxd5 (or 15...Nxd5 16.exd5 Bxd5! 17.Qxd5 transposes) 16.exd5 Nxd5! 17.Qxd5 Qc3+ (or, easier to foresee 17...Bb4+ 18.Ke2▢ Qxc2▢ 19.Kf3▢ Qxf5+▢ 20.Kg3▢ Qf4+ 21.Kh3 Qh6+ = etc. with perpetual check. Stockfish 9 - 64 bits POPCNT) 18.Ke2▢ Qxc2+ = with perpetual check. For instance A) 19.Qd2 Qe4+▢= etc. Stockfish 9 - 64 bits POPCNT; B) 19.Kf3 Qxf5+▢= etc. Stockfish 9 - 64 bits POPCNT.