I believe "+" is the URL encoding for space and they're just putting the band names into the URL before encoding (thus "The Beatles" -> "The+Beatles")
> (RFC 1866) specifies that space characters should be encoded as `+` in application/x-www-form-urlencoded content-type key-value pairs (see paragraph 8.2.1, subparagraph 1).
But none of that matters, particularly, because lastfm are consuming the URLs, they know full well what "+" means in a URL submitted to their servers, and also they've been around for decades (well before the whole "use %20 instead") - why on earth would they change up their URL scheme when it's working fine?