2012. aasta Londoni suveolümpiamängudel jätkas Villars oma programmi, kvalifitseerudes kahele ujumisvõistlusele. FINA B standardis oli tema aeg 59,57 (100 m liblikas) Euroopa meistrivõistlustel.
Debrecenis Ungaris ja 2:01.47 (200 m vabas stiilis) Zürichi olümpiamängudel. 100 m liblikajooksus rikkus Villars oma enda Šveitsi rekordi 59,42 sekundis, jagades teise soojuse tippkohtumise ja Hispaania Judit Ignacio Sorribes'iga 26. kohtumise esimesel mängude päeval. 200 m vabas stiilis, Villars sõitis teiseks koht esimesel soojus 1,06 sekundit taga Thailandi Natthanan Junkrajang, väljaspool tema isiklik parim 2:03.55. Villars ei jõudnud poolfinaali, sest ta oli eelvalimistel kolmekümne esimesena.