WML is the plain text code that you write.
WMLC is the compiled version of the WML.
The WAP browser in your phone needs to have WMLC (byte code). But, we use WML because it is easy for us to understand and maintain. So, as part of its job (as the interface from the internet world to the wireless world), the WAP gateway will compile all recieved WML data into WMLC format before sending it to the mobile browser.
The advantage of using WMLC is that it is smaller (less payload)and the gateway has less work to do (more efficient). There are lots of "WMLC Compilers" on the internet that you can get to create your WMLC.