Why MultiBit replays transactions from internet on every startup?
MultiBit remembers the last blockheight that it saw in the wallet.

There are various times where, if it sees discrepancies across the wallets (or compared to the Bitcoin network) it goes back in time to get the transactions again. This is is to prevent inconsistencies and to deal with forks etc.

It goes back in time using a checkpoints file, which is included in the installer. As 0.5.14 is a couple of months old now it goes back a bit further in time than is ideal. I update the checkpoints file in every build.