Honza Cervenka: <catfriend: <mertangili> In fact, it seems you're right!
23.Rh1 Qa1+ 24.Kd2 Qa5+ and Black's even better.
23.Qh7/Qh6, protecting the rook, Rh8 24.Qxh8 Rxh8 25.Rxh8 Qa1+ 26.Kd2 Qxb2, 0-1.
23.Bd3 Kxh4 is a draw, after 24.Qh6+ Kg3 25.Rg1+ Kxf3 26.Qh1+
23.Bd3 Qa1+ 24.Kd2 Qxd1+ 25.Kxd1 Kxh4 26.f4 Kg3 is probably a draw, certainly not a victory for White.
Looks like this whole attack by Lilienthal is a mistake.>
Lilienthal's attack was correct but 21.Qg7 was a serious slip. Instead of that 21.f4+! wins in all lines:
A1) 21...Kxe4 22.Bg2+ Kf5 23.Rd4 (threatening Bh3#) 23...Qa1+ (23...Kg4 24.Rh4+ Kg3 25.Rh3 Bxh3 26.Qxh3+ Kf2 27.Rd2+ with mate in next move or 25...Kg4 26.Qh4+ Kf5 27.Be4#) 24.Kd2 Kg4 (24...Qg1 25.Bh3+ ; 24...Qa5+ 25.c3 Kg4 26.Rh3 ) 25.Rh3 Qa5+ 26.c3 Bd5 (to stop threatening 27.Qh4+ Kf5 2á.Be4#) 27.Rf3 (threatening 28.Qh3#) 27...Rh8 28.f5+ Be4 29.Rxe4#.
A2) 21...Kxe4 22.Bg2+ Ke3 23.Rh3+ Bxh3 24.Qxh3+ Kxf4 25.Qh4+ Kf5 26.Bh3+ Ke5 27.Qd4#
A3) 21...Kxe4 22.Bg2+ Kxf4 23.Rh4+ Bg4 24.Rxg4+ Kxg4 (24...Kf5 25.Rf4+ Ke6 26.Bh3+ Ke5 (26...f5 27.gxf6+ Kf7 28.Qg7#) 27.Re4+ Kxe4 28.Qh4+ Ke3 29.Rd3+ Ke2 30.Qe4+ Kf2 31.Qe3#) 25.Rd4+ Kf5 26.Qh3+ Kxg5 27.Qh4+ Kf5 28.Bh3+ Ke5 29.Qf4#
B1) 21...Kxf4 Kxf4 22.Rh4+ Ke5 23.Qg7+ f6 24.gxf6 Rg8 25.Qxe7 Qa1+ 26.Kd2 Qa5+ 27.Ke2 Rge8 28.Qxd6+ Kxf6 29.Rd5 and black must sac the Queen to avoid immediate checkmate.
It is also possible to note that 20.e5+! dxe5 21.g5+ Kf5 22.Rh4 with threat Bh3# would have been easier and shorter way to win for white.