Casting a musical is always a difficult process. It becomes even more complicated when the decision is made to move from the stage to the screen. Some actors are better at acting than singing, and some performers are better at singing and dancing than they are at acting. It's a precarious tightrope to walk, all in the name of producing the best movie they can with actors that make the characters feel true to their roles.

RELATED: In The Heights: The 10 Best Musical Numbers From The Movie

In the Heights definitely has some of these casting complications. Though its main cast is relatively slim, the universe is sprawling with characters from all walks of life. Even still, within its main cast of characters, there are some actors who are better suited for their roles than others.

Melissa Barrera (Vanessa Morales)

In The Heights club scene

Vanessa Morales is a character that the original musical never took much time to develop. But the film resolves that, spending more time exploring her desires and dreams, and doing so with the casting of Melissa Barrera.

Barrera is particularly excellent in scenes involving impressive choreography, such as the extended nightclub sequence, and in emotional moments, such as in her duet "Champagne." But in the quieter moments in between, Barrera's performance falters, if only because the film doesn't give her much else to do.

Lin-Manuel Miranda (Piraguero)

Piraguero sings and dances next to Mr. Softee's truck

Though he no longer plays the lead role of Usnavi that he did in his younger years, nor the lead role of Alexander Hamilton in Hamilton, Lin-Manuel Miranda still manages to make the most of his few minutes of screen time in the film.

Piraguero is one of the most vibrant parts of the community of Washington Heights, due to his uproarious singing, his piragua slinging, and his rivalry with Mr. Softee. Miranda completely commits himself to the role, making the character as over the top as he deserves to be.

Gregory Diaz IV (Sonny de la Vega)

Usnavi de la Vega and Sonny de la Vega sit at a table side by side in In The Heights

Sonny might be the youngest character in the film, but thanks to the incredible acting work of up and comer Gregory Diaz IV, he manages to leave one of the largest impressions of the entire cast.

RELATED: 10 Musicals To Watch Before In The Heights

As an undocumented youth, Sonny carries a constant fear with him every day, coupled with his feelings of failure for not being able to make his dreams come true. Diaz imbues this sense of seriousness into every one of Sonny's scenes, all while still making the audience laugh and rejoice with him in his daily childlike adventures at the bodega and with his best friend, Graffiti Pete.

Olga Merediz (Abuela Claudia)

Abuela Claudia sings "Paciencia y Fe" in the subway

As the only member of the original Broadway cast to reprise their role in the film, Olga Merediz brings a certain confidence and gravitas to the role of Abuela Claudia that none of the other actors bring to their roles.

Though she has relatively little time on screen compared to the size of her role in the musical, Merediz still manages to make Abuela one of the most dynamic, beloved characters in the entire film. From her tired resignation at having to pinch pennies at the new laundromat, to her powerhouse performance of pain and longing in "Paciencia y Fe," Merediz excels in both the big moments and the quiet ones.

Corey Hawkins (Benny)

Benny stares after Nina in awe in the cab company office

Benny might only be a supporting character in the grand scheme of things in the film, but if there's any cast member who more than proves they are leading man material, it's none other than Corey Hawkins.

Hawkins is nothing short of a revelation in the role of Usnavi's best friend and Nina's boyfriend. Of the entire cast, he comes the closest to matching the tone and delivery of the original Broadway actor to inhabit the role, Christopher Jackson. Hawkins imbues Benny with equal parts childlike glee in his scenes with his friends, and deeply felt longing in his scenes with Nina, allowing him to be one of the more nuanced characters in the film.

Jimmy Smits (Kevin Rosario)

Jimmy Smits plays Kevin Rosario in The Heights

It's no secret that Jimmy Smits is one of the most underrated and hardest-working actors in Hollywood. His filmography speaks for itself, with flashy titles from The West WingNYPD BlueSons of Anarchy, and even a role in Star Wars under his belt. But in In the Heights, Smits delivers unarguably some of his best work to date.

RELATED: The 10 Best Hamilton Songs From The Broadway Play (Ranked By Spotify Listens)

As the hard-working and proud Kevin Rosario, Smits is a man driven by rivaling desires: his desire to do better than his father, his desire to do better for his daughter, and his desire for his daughter to do better than him. He understands all too well the political reality of the world they live in, which makes his selfless sacrifice of his family business in order to ensure his daughter can return to college all the more heartbreaking and profound. Smits's performance is deeply lived in, profoundly sympathetic, and far and away one of the highlights of the film.

Leslie Grace (Nina Rosario)

Leslie Grace as Nina Rosario in In The Heights

Nina Rosario has always been one of In the Heights' shining stars, even when it only existed as a musical on stage. With Leslie Grace in the role, Nina's star quality only continues to shine - something that is made all the more remarkable by the fact that this is Grace's acting debut.

Prior to the film, Grace has had a successful career as a singer, and her singing talents are more than well-suited to the role of Nina, a character whose soulful journey finds her engaging in multiple deeply reflective songs. But Grace brings more than just soul to the role: she brings fire, passion, and above all else, a resounding sense of empathy, making Nina every bit the best of the barrio that the musical describes her to be.

Anthony Ramos (Usnavi de la Vega)

Anthony Ramos as Usnavi de la Vega in In The Heights

Anthony Ramos may have become a household name in the entertainment world after his dual role as John Laurens and Philip Hamilton in Hamilton. But it's unarguably his turn as Usnavi de la Vega in In the Heights that will allow Ramos to claim his rightfully deserved place among the stars.

Ramos manages to hit all the right notes as Usnavi, whether those of the awkward and nervous in love suitor; the fiercely protective cousin; the impassioned advocate for the entire barrio; the loving pseudo-grandson; and so much more. Ramos is magnetic in every moment of his performance. With any other actor in its main role, In the Heights would not have worked anywhere near as well.

NEXT: In The Heights: All 17 Songs, Ranked Worst To Best