Debutó en el máximo circuito el domingo 19 de septiembre de 1999 en una derrota de 4-2 de su equipo, Monarcas Morelia, frente al Pachuca en el Estadio Hidalgo.
En el torneo Invierno 2000, a pesar de ser relevo del entonces arquero titular Ángel Comizzo, Muñoz logró su primer título de liga con Morelia contra el Toluca y llegó a dos finales de liga consecutivas en los siguientes dos años. Con el Morelia disputó 282 partidos y recibió 372 goles.
Club de Fútbol Atlante
Fue transferido en el Draft 2010 al Atlante, a cambio del también arquero Federico Vilar. Tuvo un paso bueno como arquero atlantista, cubriendo la salida de Vilar que era un icono del club.
Club América
En diciembre de 2011 Moisés Muñoz firmó por el Club América a petición del Director Técnico Miguel "El Piojo" Herrera, quien ya lo había dirigido en el Atlante[5] durante el Clausura 2012. Sería en el Clausura 2013 en el que lograría su segundo título en su carrera, esta vez con las Águilas en una final cerrada ante Cruz Azul, donde anotó el gol del empate global de cabeza en el minuto 93 para alargar el partido a tiempos extras,[3][1] además de atajar un par de penales a los cementeros en la tanda de definición.[6]
Logró su segundo campeonato con el América y tercero en su cuenta personal en el Apertura 2014. Además de ser líderes generales del torneo, las Águilas vencieron en la final por el título a los Tigres de la UANL.
Chiapas Fútbol Club
Luego de anunciar su salida de América a través de su cuenta de Youtube y al no entrar en más planes de Ricardo La Volpe, se confirma su fichaje al Chiapas Fútbol Club en calidad de Préstamo por 1 año sin opción a compra.
Club Puebla
Al descender con Chiapas Fútbol Club, en el draft del Apertura 2017, el Club Puebla lo adquiere en calidad de Préstamo por 1 año con opción a compra.
El 12 de noviembre de 2008 regresa a la selección tras dos años de no ser convocado. En esta ocasión fue llamado por el técnico Sven-Göran Eriksson para el amistoso contra Ecuador, pero no tuvo minutos de juego. El 13 de junio de 2013 regresa a la Selección tras 5 años sin ser convocado. El técnico que lo llamó en esta ocasión fue José Manuel de la Torre para jugar la Copa Oro 2013, quedando como tercer portero detrás de Jonathan Orozco (Monterrey) y Alfredo Talavera (Toluca). Sin embargo, esta vez sí pudo disputar un encuentro.
El 18 de mayo de 2014 estuvo en la lista preliminar de la Selección Mexicana de 30 jugadores para el Mundial 2014, aunque nuevamente quedó fuera de la lista final de 23 jugadores. "El Piojo" Herrera lo llevó a la Copa Oro 2015 y, sin tener minutos de juego, fue campeón del torneo. "El Tuca" Ferretti también lo convocó y jugó contra Argentina.
Moisés Muñoz disputó un total de 18 encuentros con la selección de fútbol de México entre los años 2004 y 2017, de estos, 10 fueron en competición oficial y 8 fueron de carácter amistoso. Recibió un total de 12 goles, logró mantener su portería a cero en 11 ocasiones (9 en partidos completos) y atajó un penal ante Nueva Zelanda.
El 3 de junio de 2012[1] Muñoz conducía su automóvil en la carretera que conecta la Ciudad de México con Morelia cuando perdió el control de su vehículo, quedando completamente volcado. El portero se dirigía a la Ciudad de México para incorporarse con su club, alrededor de las 7:00 p. m. con su esposa Verónica Castro Alfaro (31 años), y junto con sus dos hijos: Diego Moisés (8 años) y Sofía (3 años). Todos ellos fueron trasladados al Hospital Ángeles del Pedregal por helicóptero. «Al querer tomar unos chicles que venían en la bolsa de mi esposa, por no despertar a nadie, perdí el control y cuando quise reaccionar ya no pude controlar la camioneta», explica Muñoz. De acuerdo con informes de la Cruz Roja Mexicana, Muñoz sufrió una lesión cerebral traumática, pero estaba "estable y consciente".
↑ abMoisés Muñoz disputó un partido ante Martinica en 2013, sin embargo, esta selección no está reconocida por la FIFA, por lo que estadísticamente sus partidos no son válidos.
↑Moisés Muñoz disputó un partido ante Finlandia en 2013, sin embargo, la federación de este país no avaló dicho representativo como su selección "A", por lo que estadísticamente el partido no es válido ante la FIFA.