Assume theThe game was equalambiguous until move 28, there is no clear way to win but as you mentioned white has the attacking form.
Let see the game from move 18.e5
2bqnrk1/5ppp/r7/pp1p2P1/2pPP3/P1P2PN1/R5BP/2Q2RK1 w - - 1 18
White is attacking on king's side as Kasparov mentioned he could play 18.Rb2
to avoid black to make a passed pawn and keep pressure in both king and queen sides. But white decided to complicate the game.
Another move which leads many people criticize Anand was move 20.axb4
2bq1rk1/2n2ppp/r7/p2pP1P1/1ppP1P2/P1P3N1/R5BP/2Q2RK1 w - - 0 20
1.f5 b3 2.Raf2
Some GMs and also engines prefer to push the pawn to f5
and continue attacking just in king's side. White's 20.axb4
made a passed pawn for black on square b3
(two moves to promote) and black got counter play.
Before move 28 white had attacking chances and a draw at least. But white made a blunder 28.Nf1??
, if 28.Bf1
was played, then the game can continue in this way:
2bqnrk1/5p1p/5PpQ/3pP1P1/2pP1R2/2P3N1/6BP/1q4K1 w - - 1 28
1. Bf1 Qd1 2. Rh4 Qh5 3. Nxh5 gxh5 4. Rxh5 Bf5
The game is almost a draw with some minor advantages for black. It's ambiguous.
But white played 28.Nf1??
and black put his queen on e1
to capture the white's rook on h4
-- a big material advantage for black.