telnet was the traditional way to get a remote shell on a networked unix machine.  rsh was the other.  ssh is a relative newcomer in comparison.
telnet typically talks to a remote telnet daemon (or "server" process).  At that point you authenticate with a username and password to login and then you get a shell.  So, yes, it's a method of getting a remote shell.
The telnet client can also be used for other connections by specifying another port (eg telnet host 80 will talk to the web server); this isn't a remote shell.  It's the combination of telnet talking to telnetd and authenticating that gives the remote shell.
telnet is not recommended for remote shell because the username and password are typically passed over the network in plain text; a network sniffer or "man in the middle" attack can steal your password.  Not good!  ssh encrypts the traffic to help prevent this.
 
                