Es sind Sommerferien. Als Versprechen, dass dieser Sommer etwas ganz Besonderes wird, schenkt Troy Gabriella eine Kette mit einem T als Anhänger, welches für seinen Namen steht. Was die beiden nicht ahnen: Sharpay plant schon fleißig, wie sie das verliebte Pärchen auseinander bringen kann, da sie Troy für sich gewinnen möchte.
Troy bekommt einen Job im Club von Sharpays Eltern angeboten und schafft es, auch seinen Freunden und den Wildcats dort Jobs als Rettungsschwimmer, als Caddies oder auch als Köche zu besorgen. Sharpay, die bereits einen Auftritt mit Troy beim jährlichen Song Contest im Hotel plant, ist nicht begeistert. Entmutigen lässt sie sich dennoch nicht und verschafft hinterrücks dem eigentlich widerwilligen Troy immer wieder gute Jobs. So findet er nur noch selten die Möglichkeit, sich mit Gabriella zu treffen und verspätet sich dann sogar, da Sharpays Eltern, die von dem sportlichen Jungen angetan sind, ihn, und vor allem Sharpay, in Beschlag nehmen. Sie überredet ihn auch zu einem gemeinsamen Auftritt beim Songcontest. Ryan aber merkt nun, dass Sharpay ihn immer nur benutzt hat und zieht sich zurück. Und Troy streitet mit seinen Freunden, die ihm sagen, dass er nicht mehr derselbe sei und sich verändert habe. Gabriella bestätigt dies. Bei einem Baseball-Spiel, bei dem Ryan gegen die Wildcats (mit Chad, aber ohne Troy) spielt, freundet er sich dann allmählich mit den Wildcats und auch mit Gabriella an, die Mitleid mit ihm hat und ihn sympathisch findet. Troy jedoch wird eifersüchtig, als er Ryan und Gabriella am Pool tanzen sieht, weil er nicht weiß, dass sie nur für die Talentshow proben. Die ganze Situation eskaliert, als Gabriella und den anderen auf Sharpays Befehl hin verboten wird, an der Talentshow teilzunehmemn und stattdessen alle arbeiten sollen. Gabriella stellt Sharpay daraufhin zur Rede und die beiden kommen auch auf Troy zu sprechen. Gabriella sagt, dass sie keine Lust auf dieses Spiel habe und dass sie kündige. Wütend braust Sharpay mit ihren Girls ab und Troy, der das Gespräch verfolgt hat, geht zu Gabriella, die dieses Theater aber nicht mehr will. Nach einer kurzen Unterhaltung über die Situation singt Gabriella I Gotta Go My Own Way (dt.: Ich muss meinen eigenen Weg gehen). Danach verlässt sie den Club, was auch bedeutet, dass sie sich von Troy getrennt hat. Niedergeschlagen wird Troy bewusst, wie sehr er sich tatsächlich verändert hat, und er will sich bessern. So sagt er der aufgebrachten Sharpay den gemeinsamen Auftritt ab. Danach versöhnt er sich mit seinen Freunden und Ryan. Ryan überredet ihn dann, doch mit Sharpay zu singen. Das geplante Lied Everyday muss Troy allerdings erst noch lernen. Überraschenderweise hat Sharpay dieses Lied aber auch nicht einstudiert, sondern sich stattdessen auf You are the Music in me (die Alternative, die eigentlich für Troy und Gabrielle bestimmt war) vorbereitet. Letztendlich muss Troy allein auftreten. Am Klavier von Kelsi begleitet, stimmt er das Lied an und plötzlich ertönt auch die Stimme von Gabriella, die hinter seinen Freunden auftaucht. Beide versöhnen sich und singen gemeinsam, während auch die Wildcats ihr Debüt geben. Obwohl der Auftritt ein voller Erfolg war, gewinnt Ryan, der auch umjubelt wird, den Contest. Als alle auf dem Golfplatz feiern, küssen sich endlich Gabriella und Troy, die die ganze Zeit über immer wieder daran gehindert wurden. Der Film endet am Pool, wo alle Charaktere gemeinsam All For One aufführen.