Making this the question, I we attempted RewriteRule ^(.*)/?$ /groups.php?cat=$1 however it provides me with error 500

I believe your condition is you are becoming stuck within an infinite loop. When the url is re-written, mod_rewrite begins over with all the rules. Which means you either have to give a RewriteCond to exclude groups.php, or you will have the ability to make use of the L flag to signal that this is actually the last rule:

RewriteRule ^(.*)/?$ /groups.php?cat=$1 [L]