White has problems with the d3-square and the dark squares. It's important to prevent the bishop on g7 from becoming active in the following moves.
1. d2d4  1... g8f6  2. c2c4  2... e7e6  3. b1c3  3... c7c5  4. d4d5  4... e6d5  5. c4d5  5... d7d6  6. e2e4  6... g7g6  7. f2f4  7... f8g7  8. f1b5 [%cal df1b5][%c_arrow f1b5;keyPressed;none;from;f1;opacity;0.8;to;b5;persistent;false] Historically this line has always been considered one of the most dangerous against the Benoni. 8... f6d7 It is firmly established in opening theory that this is the best way to cover the check. 9. a2a4  9... b8a6 Now and in the next moves Black can castle, which may lead to a transposition of moves. But Rapport has other plans. 10. g1f3  10... a6b4 This variant became famous due to Kasparov's analysis of his win against Nunn, published in the book The Test of Time, one of the best chess books ever written. 11. e1g1  11... a7a6 Kasparov attaches a question mark to this move and suggests 11...0-0. 12. b5d7 A direct continuation of the attack and a paradoxical move, as White normally doesn't want to exchange his light-squared bishop for a knight, further facilitating Black's development. The idea is to play f4-f5 next, when the absence of the knight in the defense can be felt. It's very difficult to say without deep analysis which move is better, whether this or bringing the bishop to c4 or e2. 12... c8d7  13. f4f5  13... e8g8 [%c_effect g8;square;g8;type;GreatFind;persistent;true] 14. c1g5  14... f7f6  15. g5f4  15... g6f5 [%c_effect f5;square;f5;type;GreatFind;persistent;true] Another move that gets a question mark in Kasparov's original analysis. Apparently Rapport has his own opinions on classical games. 16. d1d2 [%c_effect d2;square;d2;type;Interesting;persistent;true] An interesting novelty. White plays slowly: the idea is to move the rook to e1 and then play Bh6, when the attack develops easily. Black needs to be fast. 16... f8e8 [%c_effect e8;square;e8;type;GreatFind;persistent;true] 17. a1e1  17... c5c4 [%c_effect c4;square;c4;type;GreatFind;persistent;true] A typical move, securing the d3-square for the knight. 18. e4f5  18... e8e1  19. f3e1  19... d7f5  20. f4d6 [%c_effect d6;square;d6;type;GreatFind;persistent;true] 20... d8d6  21. f1f5 