Für einen einfachen Einstieg mit schnellen "Erfolgserlebnissen" würde ich C# empfehlen - man hat alle Vorteile einer objektorientierten Hochsprache, beherrscht man erstmal die Syntax kommt man mit allen C-ähnlichen Sprachen gut zurecht und das ganze "Drumherum" ist sehr ausgereift (massenhaft GUI-Technologien, sehr gute Libraries, VisualStudio ist eine tolle Entwicklungsumgebung, echte Generics, funktionale Ansätze, ...). Nachteil ist natürlich Windows only (Mono hinkt immer nach :/).
Wenn du dann wirklich gefallen am Programmieren findest kommst du um besser zu werden an der Vertiefung deiner Kenntnisse und somit an den harten Grundlagen aber nicht vorbei - um wirklich "gut" zu werden braucht man einfach Wissen über Pointerarithmetik, Datenstrukturen, theoretische Informatik usw., ausserdem sollte man in alle Programmierparadigmen zumindest mal hineingeschnuppert haben.
Ich selbst arbeite in einer international tätigen Softwarefirma (hauptsächlich in C#, bin daher evtl. etwas voreingenommen), habe aber bereits so ziemlich alles hinter mir - klassische Linux Systemprogrammierung in C mit SharedMemory, Semaphoren und co, ein eigener Compiler in C der eine Phantasiesprache nach AMD64 Assembler übersetzt, rein funktionale Programmierung in Haskell (das ist was für richtige Nerds - (\x -> \y -> (x (y x), x, y)) lässt grüßen), Prolog, ein eigener Interpreter, und natürlich alle gängigen Sachen wie Java, Perl, Lua, ... - wenn man einmal soweit drinsteckt beherrscht man irgendwann jede Sprache ziemlich schnell.
Du solltest dir aber nicht zuviele Illussionen machen - das eigene MMORPG ist sicher ein guter Ansporn, aber ein Ziel das in weiter Ferne liegt und nur mit extrem viel harter Arbeit in ferner Zukunft mit sehr geringer Wahrscheinlichkeit drin sein wird.
@Diskussion:
Ich glaube ihr redet etwas aneinander vorbei. Turing-Vollständigkeit ist natürlich ein Argument, an dem es nichts zu rütteln gibt. Aber auch Excel-Makros sind Turing-vollständig, trotzdem käme niemand darauf damit größere Anwendungen zu entwickeln.
Auch wenn logikorientierte und funktionale Einflüsse "im Kommen" sind ist es zurzeit doch so, dass die meisten Probleme in traditionellen imperativen Sprachen am einfachsten zu lösen sind.
Natürlich gibt es auch immer wieder eindrucksvolle Beispiele dass in Turing-vollständigen Sprachen alles möglich ist (
http://bellard.org/jslinux/ 
), die Frage die man sich stellen sollte ist aber in welchem Kontext man entwickelt und mit welchem Aufwand man darin an sein Ziel kommt.