Roles web role and worker role

In Azure, what are roles, web role and worker role?

Roles are nothing but applications or components. In other words, they are actually the application code.
Windows Azure categorizes applications in two categories:
a. Web application
b. Worker application

Web role / Web application: A web role is a Web application which can be accessed via HTTP. A web role can be hosted as a subset of ASP.NET and Windows Communication Foundation (WCF) technologies.

Worker role / Worker process: A worker role is a background processing application which is somewhat similar to a windows process. A worker role does not communicate directly with the external world. In other words, it does not accept requests directly from the external world.

Web roles are Windows VMs with IIS enabled.
Worker roles are Windows VMs with IIS disabled (and you could manually enable it).

Web roles are web applications hosted in IIS.

Worker roles are processes that can do some work (i.e. automatically compress uploaded images, do stuff whenever something changes in your database, get new messages from queue and process, you name it).