This might sound stupid, but... usually, if you think it's "as long as it needs to be", it's too long. You need an outside pressure to get you to the point where you're going to be tearing out your hair in desperation, not knowing what else to cut.
And in this state, you need to do a bit more cutting.
And then it's going to be "as long as it needs to be".
This is even more likely, if it's your first book.
Creators, in any area, tend to overindulge, in their grand vision, wanting to include all of the bells and whistles and nuances and stuff.
Some outside pressure to trim is usually needed.
Even if you think you are the next Tolstoy, and even if you were right, don't forget how many people there are who know his books are good and valuable, and actively tried to read them, tried for several times, and are sad that they weren't able to get through them, but... they just weren't able to get through them because of how lengthy and slow-moving they were.
I am in this cathegory. And the same thing almost happened to me with Lord of the Rings. Getting through the first 100 or so pages of the first book was boring and painful and the only reason I did it was that I needed something to waste time then, so I got through it. And I'm glad that I did, but at the same time, if I were Tolkien's editor, I'd tell him to shove all the lineage expositions up his... Silmarillion.
While I'm sure he would argue to death how important it all is for the story.
The thing is - there's two ways to look at "it's as long as it needs to be".
One, which is probably how you mean it, is "it contains all the meaning it needs to contain". And with this, I have no problem agreeing.
The second one, though, is actual word-count length - how much space does it take you to include all of the meaning that needs to be included?
And this is what good trimming is about - not removing meaning, but condensing its expression. I very much recommend studying up on how to create multipurpose scenes - keeping all of the meaning and points, but reducing the length by conveying multiple of those essential meanings and points at the same time.
It's not about selecting and deleting paragraphs and scenes. It's about merging their meaning. I'm sure there's multiple places where you convey one essential thing per scene, where you can and should merge several scenes into one which conveys all of those meanings and points at the same time. Trimming by condensing, not cutting.
Removing purely expositional/worldbuilding stuff by incorporating it into actual story-conveying parts, for example. Incorporating character and place descriptions into scenes that actually move the plot forward. Etc etc.
Again, don't cut stuff. Shorten by merging stuff.
Take this comment of mine as a good anti-example. I'm dancing around one point from several sides, repeating myself, etc. It might be nice to read as in "it flows and sounds nicely", but having a whole book written like this would be incredibly boring, because it's... sparse, thin.
If I was a better writer, and/or if I gave this comment several revisions, ideally, I'd arrive to a point where it would be a one paragraph which you would feel the need to read several times, each time focusing on a different aspect, thus kind of "expanding" it to this sparse form in your mind.
And that would be what's called "dense, meaning-packed writing".
And that's what you want to achieve. You want, to a larger or smaller degree, your text to be a "maze/zip file of meaning which the reader wants and has to unravel across several readings", not a sponge he's trying to swim through quickly so he can do the opposite - condense it into the points.
Also, publishers are usually jaded assholes, so better to have it proof-read by several people who are good examples of your target audience, and edit it based on their feedback, until their reactions are what you want them to be.
Then go to publisher, armed with this as a base of your reasoning as to why, right now, it's precisely the length and density you want and intend it to be, the size and density it needs to be.