En general:
Generar: Solamente compilar (sea modo debug o release)
Ejecutar: Se compila y corre la aplicación
Publicar: Cuando tu sitio lo tengas terminado lo puedes publicar en una ruta física y las de alta en el IIS como directorio virtual para que todos accese, o si ya tienes el sitio indicas la URL, o lo puedes hacer también por FTP
te paso una mejor referencia respecto a publicar
http://geekswithblogs.net/ranganh/ar...eployment.aspx http://msdn.microsoft.com/en-us/libr...zt(VS.80).aspx
Salu2