Los servicios expresos, que en general se pueden definir como servicios que atienden a un subconjunto de los paraderos de un determinado corredor, son una estrategia de operación que puede ser beneficiosa tanto para los operadores como para los usuarios. Una reducción en el número de detenciones beneficia a los usuarios al reflejarse en una disminución en los tiempos de viaje. Naturalmente, esto también favorece a los operadores, que al ver reducidos sus tiempos de ciclo pueden hacer un uso más eficiente de su flota. Estos beneficios deben compensar el perjuicio que experimentan los usuarios de los paraderos omitidos, cuyos tiempos de espera pueden verse elevados por este tipo de medida. En este trabajo se propone una forma de diseñar servicios expresos en una red de transporte público urbano operada por buses. El algoritmo de diseño que se plantea genera un conjunto de servicios y entrega sus frecuencias de operación, tomando en cuenta la restricción que impone la capacidad máxima de los buses, y considerando que los pasajeros minimizan sus tiempos esperados de viaje considerando la existencia de líneas comunes y la posibilidad de realizar trasbordos