Any shinobi can learn as many techniques of their rank or lower as they wish, as long as they meet the requirements for learning that jutsu, but the number of jutsus above their rank that they can learn is limited. See below for details:
Academy student:
E-rank jutsus allowed: no limit
D-rank jutsus allowed: 5
C through S rank: none
Genin:
E-rank jutsus allowed: no limit
D-rank jutsus allowed: no limit
C-rank jutsus allowed: 3
B through S rank: none
Chuunin:
E-rank jutsus allowed: no limit
D-rank jutsus allowed: no limit
C-rank jutsus allowed: no limit
B-rank jutsus allowed: 3
A-rank jutsus allowed: 1
S-rank jutsus: none
Special Jounin:
E-rank jutsus allowed: no limit
D-rank jutsus allowed: no limit
C-rank jutsus allowed: no limit
B-rank jutsus allowed: no limit
A-rank jutsus allowed: 3
S-rank jutsus: 1
Jounin:
E-rank jutsus allowed: no limit
D-rank jutsus allowed: no limit
C-rank jutsus allowed: no limit
B-rank jutsus allowed: no limit
A-rank jutsus allowed: no limit
S-rank jutsus allowed: 3
Sannin/Kage:
E-rank jutsus allowed: no limit
D-rank jutsus allowed: no limit
C-rank jutsus allowed: no limit
B-rank jutsus allowed: no limit
A-rank jutsus allowed: no limit
S-rank jutsus allowed: Primary Element- no limit
Secondary Element- 2