Trods sit nederlag ved Grandson, førte Charles den Dristige af Burgund sin hær på 20.000 lejetropper dybere ind i Schweiz. I kantonen Fribourg lagde han Morat under belejring, på den østlige bred af Morat-søen. Det schweiziske infanteri, omkring 35.000 stærkt, som marcherede landsbyen til undsætning, passerede ubemærket gennem den venstre front af de burgundiske linjer den 22. juni 1476. De schweiziske pikenerer og hellebardister, som uventet angreb nær midten af Charles position, trængte frem til søen, hvilket splittede den fjendtlige styrke i to. Slaget blev hurtigt en nedslagtning da de hårdt kæmpende bjergfolk knuste deres modstandere indgående. Syd for landsbyen Morat døde en styrke på 6.000 italienske infanterister, som var indesluttet mod søen, hvor de stod. Charles trak sig tilbage ind i Loraine, men konføderationen af kantoner sendte en hær i forfølgelse.