Understanding the solution:
First of all, notice that black cannot move the knight. It MUST protect the pawn on f6. Otherwise, bishop takes pawn, check, white advances pawn and gains a queen.
Also, obviously, black cannot advance that pawn without putting itself in check. That leaves black only able to move the pawn on f6, f7, h5, and h7. (11 wasting time moves) Because white moves the bishop to where it does on the first move, black cannot advance the pawn on d4 to d3, because, white pawn take black pawn, black pawn on c3 cannot move to c2 or bishop takes pawn. black has to move king back and forth, white pawn that took the black pawn moves forward, attacking the black knight - loss of black knight or moving black knight means white captures pawn on f3, check. If black king ever moved to c8, then white king moves to a6, protects pawn, gains queen.
Now, that long sequence of moves that you saw the white king make - it causes an odd number of moves to get back to its original spot because of the triangle at f1, f2, e1. Because of this, white has the opportunity to move to a6 while black is at a8 or c8 - again, protecting the pawn and gaining a queen. So, black has to move something else while the white king is at a5. Eventually, 100 and something moves later, black HAS to do something else; each of the choices leads to a forced mate.
Or, start trading pawn for pawn, gimme a queens, exchange of queens, etc.
Black's alternative is to move it's king away from that spot - white king moves to a6, then gains a queen in a move or two and game is virtually over.
White moves bishop to b1. Black cannot advance the pawn on d5 to d6 - because pxp, and the other pawn has no where to go - cannot gain a queen, bishop simply moves in front of that pawn on the next move
Black cannot move the knight - it must protect the pawn on f6. Otherwise, the bishop takes the pawn, check, and white can advance to gain a queen.
So, after a pxp exchange on d6, the white pawn cannot be attacked by the knight. (or game is virtually over)
Then, the white only needs to advance the pawn one space to attack the knight (and game is virtually over)