lo que decis sobre escaparlas es correcto..
pero..
Código:
//esto enviaria literalmente $row[id], y no su valor ya que lo que esta entre comilla simples no es tomado como variable
header('Location: reserva.php?idalquiler=$row[id]');
//esto daria un error de codigo ya que estas dejando abierta la ultima comilla simple
header("Location: reserva.php?idalquiler='".$row['id']."');
//esto da otro error de codigo por '" cerras la primera simple abris dobles sin concatenar
header('Location: reserva.php?idalquiler='".$row['id']);
//las unicas formas que yo conozco son..
header('Location: reserva.php?idalquiler='.$row['id']);
header("Location: reserva.php?idalquiler=".$row['id']);
header("Location: reserva.php?idalquiler=$row[id]");