Unfortunately it would take too long to break down exactly how each site determines WAR. If you are interested and have the time, they each do a full breakdown on their sites on how they determine WAR. The differences are in the metrics they use. For example, Fangraphs uses UZR as their defensive metric when measuring WAR while BR uses both DRS and TZ(Total Zone). I generally use both sites for various things, but BR is my preferred site for WAR. It's much more extensive, especially since it's been updated. There are metrics that I prefer on Fangraphs though. For example, I prefer wRC+ a lot, lot, lot more than OPS+ and also UZR over TZ as an individual defensive metric. Morneau only slugged .411 and although OPS is an easy stat to look at, it is a very flawed metric when truly measuring a player's offensive value. OBP% assumes all hits and walks are equal. SLG% doesn't weigh hits properly (e.g., a double is not worth twice as much as a single). Then OPS combines the two into one metric, assuming both are equal. When in reality 1 OBP% is worth close to double 1 SLG%. That's why it's better to look at wOBA(weighted On Base Average). wOBA takes each offensive outcome and weighs them in proportion to their actual run value. The weights change year to year as well, adjusting to the run scoring environment. So unlike OPS, wOBA properly values the player for that individual year. Unfortunately, like OPS, wOBA is not park adjusted. Fangraphs and BR both use wOBA as their offensive metric for measuring WAR, but they convert it to wRAA (weighted Runs Above Average). wRAA takes wOBA and gives it a plus/minus run value to better quantify how good a player is/was compared to league average. After being park and league adjusted BR has Swisher at (+15) and Morneau at (+2). Add on the fact that Swisher is a better baserunner and better defensively and you get the difference in WAR. Hope all this helps