Is there a maximum city population? Cant tell you yet, just didnt tried to push that hard one city, because there is just no need for it. Between 20 - 30, maybe even less, there is an hard trade off between placing another district and losing a workable tile and the question, if you really need another district in the city. Add some wonders and the space is running out already.
The problem is to get enough housing at that size, after ~25 you will need a second neighborhood, if you dont use a lot of policy cards or if you dont have the luck with GP helping it.
Sure you can push very hard with a lot of internal traderoutes, maybe I will try a game with England and making London huge ... so I think you can push over 35-40, but yeah, why should you do it? Maybe only to max out Oxford or Ruhr Valley, if unemployed citizen maybe give production...