Explanation from a user on the site:
>the ':()' shows that we're making a new function named ':'. Everything inside the '{}' is the function body, it makes two recursive calls to the ':' function and puts them into the background with the '&' so that execution continues instead of waiting for them to exit. Then it ends that command with the ';' and executes the function ':'. That makes 2 calls to ':' which each make 2 calls, and so on until ulimit or your hardware capabilities stop it.
Comment by stuart 91 weeks and 2 days ago
Without an explanation it's humor for people who know, malicious to those who don't, and at best undermines the trustworthiness of the average comment on this site, which is abnormally high for the internet.