I'm a bit surprised no one answered this by now
Ports 0-1023 (inclusive) are restricted ports, reserved for the root user access only. These are for things such as HTTP/HTTPS, email servers, TCP, FTP, etc. where security is much more important. Essentially if you want to use some other service or do testing for your own server, you use one of the higher number ports. I know that the Node.js default for example, is 3000, as it is for some other web-dev related frameworks too. Bitcoin uses port 8333.
An inbound connection is when another computer connects to your computer/server, while an outbound connection is where your computer is connecting to a different computer or server. If you're running a Bitcoin node for example, you allow inbound connections on port 8333 so that other nodes can connect to you. Similarly, those nodes will allow inbound connections on that port on their computer so you can have an outbound connection to them.