Yes on both counts.
Many processes are short lived. They get a PID, run, finish, and the PID disappears from the process table.
Processes sometimes only live for a fraction of a second!
Often when programs start they run numerous commands as part of checking the system and initializing their environment.
The maximum PID number depends on the system and is sometimes configurable. Basically if you know you are going to have a huge number of processes, then you may need to increase the number, but on new operating systems I believe the maximum number is typically large enough for most any workload.
PIDs are entries in the process table, and the more you have the more memory the process table takes up.
Have a look at this related question: https://serverfault.com/questions/279178/what-is-the-range-of-a-pid-on-linux-and-solaris
Also note that related to this is the "maximum nr of processes per user" which is a measure to protect against a malicious user intentionally creating many processes to hog the whole process table.