The best way to protect you communications is to encrypt them. This means scrambling the data using mathematical transformations in a way that is impossible to dechiper to snoopers.
Unfortunately, a lot of the technology we use today makes no guarantee for encryption- take email for example: it was never designed with security in mind. It is often stored unencrypted on the servers of your email provider.
Whenever you use a 3rd party service to communicate, you entrust them to protect the contents of your communication. For the average way people are communicating,the implications can be pretty chilling.
Here are some free software tools you can use for encrypting your communications:
Signal offers encrypted instant messaging and voice calling for both Android and iOS mobile phones. It uses mobile data to reach the other end and also allows you to verify the identity of the person you are talking to (if they are also using Signal, that is!). Download it from the official App Store on your device.
Jitsi is a free and open source voice, videoconferencing and instant messaging application for Windows, Linux, Mac OS X and Android. It supports encryption protocols for chatting as well as voice/video calls and streaming and conferencing. Get the latest version from their official page
Cryptocat is an instant messaging application available for Windows, OS X and Linux. It provides end-to-end encryption for messages, files and photos, and allows you to syncronise multiple devices. Get Cryptocat
Using encrypted email is a more advanced topic, as it needs a bit more configuration. You can do some online reading and get started with FSF’s Email Self-Defense guide.