Основная разница между этими модальными глаголами заключается в том, что can выражает физическую способность или умение, а may — шанс или разрешение сделать что-то.
I can swim
Я умею плавать
You may swim here
Вы можете плавать здесь (это разрешено)
Can обычно переводится на русский язык как «могу / умею», may — словами «можно / возможно».