Puzzle / Game of the day

Puzzle / Game of the day

White to play and win

This position is from a game between Kasparov and Topalov.   The puzzle seems reasonably hard as it stands but Kasparov must have found the solution as a bare minimum 3 moves earlier.   The game is rather well known but so good that I have included it below with light notes.

Solution 

Full game