La actual bandera de España, conocida popularmente como la 'rojigualda', nació bajo el reinado de Carlos III el 28 de mayo de 1785 aunque no fue impuesta como bandera nacional hasta 1843, cuando Isabel II era la reina.
La historia de esta bandera surge por una necesidad marítima, pues con la llegada de Felipe V y la dinastía de los Borbones al trono español, las banderas de media Europa eran muy parecidas y se producían confusiones sobre todo en el mar. Antes de 1785, la Marina española utilizaba la bandera oficial para ellos, que consistía en un fondo blanco (propio de la casa Borbón) con el escudo de armas en el centro.
El problema era que otros estados como Francia, Gran Bretaña, Sicilia o la Toscana también tenían el blanco como color principal en sus banderas, y la dificultad de distinguir unas de otras provocaba que en los enfrentamientos los barcos no pudiesen disparar hasta estar seguros de si la bandera era de un aliado o de un enemigo.
Para solucionar el problema Carlos III mandó a su Ministro de Marina, Antonio Valdés y Fernández Bazán, que elaborase una nueva bandera destinada únicamente para uso naval. Valdés convocó entonces un concurso y escogió los mejores doce bocetos, que presentó al Rey para que tomase la decisión final.
De todos ellos, el monarca escogió la bandera tricolor con los colores rojo y amarillo por su visibilidad en el mar, aunque varió las proporciones de las franjas, mandando que la franja amarilla tuviese el doble de grosor que las rojas. Así, con el Real Decreto de 28 de mayo de 1785, se hizo oficial el cambio de bandera "para evitar los inconvenientes, y perjuicios, que ha hecho ver la experiencia puede ocasionar la Bandera nacional, de que usa mi Armada naval, y demas Embarcaciones Españolas, equivocándose á largas distancias, ó con vientos calmosos con las de otras Naciones; he resuelto, que en adelante usen mis Buques de guerra de Bandera dividida á lo largo en tres listas, de las que la alta, y la baxa sean encarnadas, y del ancho cada una de la quarta parte del total, y la de en medio amarilla, colocándose en esta el Escudo de mis Reales Armas reducido á los dos quarteles de Castilla, y Leon con la Corona Real encima; y el Gallardete con las mismas tres listas, y el Escudo á lo largo, sobre quadrado amarillo en la parte superior", según reza el propio decreto.
Con Carlos IV (1788-1808), el hijo de Carlos III, la bandera llego también al Ejército de Tierra, y poco a poco su uso se popularizó, en especial a su uso durante la Guerra de Independencia (1808- 1814), y al sentimiento patriótico que surgió en la lucha contra los franceses, a pesar de que se trataba de una bandera del Ejército.
La reina Isabel II la convirtió en bandera nacional con el Real Decreto de 13 de octubre de 1843, y desde entonces los colores se han mantenido de forma invariable (excepto durante la II República (1931-1936), cuando la bandera y el himno cambiaron: la franja roja de abajo se cambió por una morada en homenaje a los comuneros de Castilla que hicieron frente a Carlos I), no así los escudos.
Carlos III no sólo cambió la bandera, también depuso el escudo borbónico que incluía, entre otras ornamentas, el toisón de oro y armas de Ducados italianos en representación de la herencia del Rey. Lo sustituyó por el castillo dorado y el león rampante de Castilla y León.
Así se mantuvo hasta la I República (1873-1874), cuando los republicanos le quitaron la corona al escudo, aunque mantuvieron los colores originales. El cambio sólo duró un año, hasta que volvió la monarquía.
En la II República, además del color morado, el escudo fue modificado para añadir los reinos de Navarra, Aragón y Granada, y se cambió la corona original por un castillo que coronaba el escudo. Además, se pusieron dos pilares con el lema 'Plus Ultra'.
Tras la Guerra Civil española (1936-1939) la bandera se modificó de nuevo. Se volvió a los colores originales (rojoy amarillo), se quitó el castillo, que se restituyó por la corona en el escudo y se incluyó el águila de San Juan (que no tiene nada que ver con el águila imperial de utilizaban los Austrias), en honor a los Reyes Católicos, en especial a Isabel, quien ya lo tenía en su escudo personal antes incluso de ser reina.
La bandera franquista aguantó hasta 1981, cuando, bajo la democracia, se dio la actual y la última versión del escudo. Se mantuvo casi igual que el de la II República, excepto que en vez de coronar el escudo un castillo se puso una corona a la que se le añadió el emblema de la Casa Borbón.