Как упоминалось выше, разница в контексте.
Первая строка будет искать все элементы данного имени тега, встречающиеся внутри тега body .
Вторая строка ищет все элементы данного имени тега, встречающиеся внутри всего документа.
С контекстом приходит скорость: если вы можете сделать свой поиск как можно более узким, вы найдете свои элементы быстрее и ваше приложение будет работать лучше.
Когда ваши документы станут более сложными, вы заметите что-то вроде этого:
document.getElementById('foo').getElementsByTagName('span')
начнет работать заметно быстрее, чем старый
document.getElementsByTagName('div')
Плюс, в сужении области вы будете иметь меньше результатов, что означает меньше итераций через DOM-узлы в поисках тех, на которых вы хотите работать.