ok orita si me volvi un ocho te voy a decir lo que yo medio entendí te voy a explicar el código como tu muy amablemente lo hiciste de la manera que yo lo entendí. tarde en responde por que me puse  leer las url que me diste.
 
empiezo con la primera linea del codigo script 
 Código PHP:
    document.addEventListener("DOMContentLoaded", function(){ 
    
  esto es para saber si ya cargo solo el codigo html es como que no le importa si los estilos css y imagenes allan cargado me imagino que es para acelerar el proceso. 
aqui declaramos las variables para luego usarlas mas adelante  
 Código PHP:
    var formulario = document.querySelector("#busqueda"),
        resultado = document.querySelector("#resultado"); 
    
  esto detecta el evento del envio y luego lo cancela, estuve intentando por que cancelamos ese evento mas no entiendo esa parte 
 Código PHP:
     formulario.addEventListener("submit", function(event){ //Al realizarse el envío
        event.preventDefault(); //Se cancela el envío 
    
  Esto es para que cuando detecte un cambio en la url actulice pero solo una parte que en este caso seria lo que este dentro del section 
 Código PHP:
     var ajax = new XMLHttpRequest(); 
    
  este for es para detectar los elementos que se seleccionaron, si no me equivoco tampoco lo entendi mucho
 Código PHP:
    for (var i = 0, selects = this.elements, total = selects.length, query = []; i < total; i++){
            if (selects[i].type != "submit"){
                query.push(selects[i].id + "=" + selects[i].value);
            }
        } 
    
  esta es como para generar el url con los datos que obtuvimos a traves del select 
 Código PHP:
     ajax.open(this.method, this.action + "?" + query.join("&"), true); 
    
  que es lo que se muestra cuando envias un formulario mediante GET que deberia mostrar algo asi como buscar.php?primero="valor"&segundo="valor"; 
y de esto lo unico que entiendo es lo de responsetext que es para obtener la respuesta del servidor 
 Código PHP:
     if (this.status == 200){
                resultado.innerHTML = this.responseText; 
    
  
Muchas gracias por tu ayuda pero me cuesta un poco entender esto