Programación asíncrona es una forma de programar en la que las tareas no se ejecutan de manera lineal, sino que algunas pueden avanzar “en paralelo” sin esperar a que otras terminen.
El concepto viene del griego syn (junto) y khronos (tiempo), y el prefijo a- significa “no”. O sea: “no al mismo tiempo” en el sentido de que el programa no se queda bloqueado esperando. En vez de pararse hasta que algo termine (como leer un archivo pesado o esperar una respuesta de internet), la programación asíncrona deja esa tarea “cocinándose” en segundo plano y sigue con otras.
Un ejemplo cotidiano: pedís delivery por una app. Mientras la comida se prepara, podés seguir usando el teléfono, chateando o scrolleando en redes. No estás clavado mirando una pantalla que diga “esperando comida”. Cuando llega el pedido, recibís la notificación. Así funciona el async: el programa no se frena, sino que sigue y responde cuando la tarea pendiente está lista.
Esto es crucial en desarrollo web, apps y servidores. Permite que un sitio no se “cuelgue” mientras carga datos o que una aplicación responda rápido aunque esté descargando archivos. Lenguajes como JavaScript, Python o C# tienen formas específicas de manejarlo: promesas, callbacks, async/await.