Since a private Wi-Fi is encrypted, does that protect the TCP server-client communication in any way?
Of course it protects the connection: to the level that WiFi connection is secure. And if the connection travels over anything that is not WiFi, then it is not protected. In itself, assuming that the connection is WiFi, or WiFi all the way seems just waiting for somebody to connect an additional wired router or switch, if you ask me.
Although it's getting better fast, previous WiFi protocols were all very vulnerable against attacks and the WiFi designers have been ignoring standard secure cryptographic techniques in the past. I would still not fully trust the security offered by it for any serious data. And that's assuming a professionally implemented WiFi connection, of course; all bets are off otherwise. Adding an additional layer seems very wise.
How about connecting it over WAN ? In that case, cryptography would be mandatory, right?
WAN is just a designation of how far a network spreads. It does not carry any mandatory security. As such, it would depend on the specific WAN. My connection to the ISP does not offer enough protection for me to trust it. Hopefully some kind of VPN is applied, and then the security of that particular VPN needs to be investigated.
Just like WiFi, it may not provide full point-to-point security from client to server. And any changes in it may still break any assumptions made for your client / server security.
I am thinking of using ECDH with AES 256-CBC as my encryption scheme.
Seriously, use TLS. Just using ECDH won't cut it and AES in CBC mode is vulnerable against padding oracle attacks. The chances of creating a secure transport mode yourself are so remote as to be near non-existent, so you have to use a common existing protocol.