It seems that adding and removing pushpins leads to memory leak.
Example you can see here, in Chrome click shift + esc to see memory consumption.
Also, in that example you can see how to add or remove pushpins:
point = new Microsoft.Maps.Location(getRandomInRange(-180, 180, 3), getRandomInRange(-180, 180, 3)); pin = new Microsoft.Maps.Pushpin(point, { text: ('p') }); myMap.entities.push(pin);