Daniil96,
Если вы хотите сразу отправить одним методом используйте fetch(). А XMLHttpRequest это еще два десятка других методов и событий, например, события прогресса (которых нет в fetch и вряд ли будут):
// В порядке выполнения:
xhr.onloadstart // 1
xhr.upload.onloadstart // 2
xhr.upload.onprogress // 3
xhr.upload.onload // 4
xhr.upload.onerror // 4
xhr.upload.onabort // 4
xhr.upload.ontimeout // 4
xhr.upload.onloadend // 5
// download
xhr.onprogress // 6
xhr.onload // 7
xhr.onerror // 7
xhr.onabort // 7
xhr.ontimeout // 7
xhr.onloadend // 8
xhr.onreadystatechange // 6-8