No conozco Malta pero Londres lo tengo muy pateado y en general Inglaterra. He tenido que trabajar en varias zonas: Londres, Oxford, Manchester, Yorkshire, Higlands (norte de Escocia).
Si dispones de tres semanas te recomiendo que vayas con una tarjeta de tren que se llama Flexipass y que te permite montar en tren todo lo que quieras. Creo que hay una que es 7 días en un mes o algo así y que sería muy apropiada para ti. La idea es que puedes montar todo lo que quieras (no importan los kilómetros ni el número de trenes que cojas) hasta un máximo de siete dias durante un mes. No tienen que ser días consecutivos, así que puede usar un día para subir de Londres a Edimburgo -por ejemplo- estar allí dos o tres días y después coger el tren para ir de Edimburgo a York o donde quieras. Sirven para los trenes Express de los aeropuertos, para los cercanías y para los de largo recorrido. No sirve para el Eurostar (Londres-París-Bruselas) pero creo que te hacen un descuento.
Pasar tres semanas en Londres si es la primer vez que vas, puede ser demasiado tiempo salvo que tengas un plan muy claro de qué quieres hacer. Revisa este hilo porque allí puse varias ideas sobre viajar a Londres:
Hilo sobre Londres
Para recorrer Inglaterra el tren es una opción bastante buena, en el último par de años han mejorado algo, pero no son ninguna maravilla desde que los privatizaron. Alquilar un coche también es una posibilidad pero tiene sus partes "negativas": conducen al revés, aparcar en algunas ciudades es misión imposible, el centro de Londres tiene "peaje", algunos atascos son terribles...
Recomiendo visitar Londres, el sur de la isla (los famosos e impresionantes acantilados blancos), las zonas interiores surcadas por canales (p.ej. West Yorkshire), York es una ciudad estupenda para pasar dos o tres días, el distrito de los Lagos, las Highlands (estupenda la franja entre Inverness y Skye).
Inglaterra es bastante cara, pero es posible hacerse un buen viaje sin gastar demasiado. Lo importante es tenerlo bien planeado. Por ejemplo, los famosos bed and breakfast pueden parecer una buena opción pero algunas cadenas de hoteles pueden ofrecerte precios muy similares si contratas con bastante antelación.
Si vas en agosto te recomiendo que retrases un poco el viaje y vayas la última semana de agosto y las dos primeras de septiembre o algo así. En septiembre hay muchos menos turistas y es mucho más fácil (y a veces barato) ir a los sitios. En agosto puede hacer bastante calor (para ser Inglaterra) y hacia mediados de septiembre puedes tener algunos días de lluvia.