i need to know the differences in general and in performance specifically between Grails dynamic finders and criteria queries
First, performance. The result of the two approaches is the same. HQL/SQL queries. How they arrive at that is minimally different and in terms of performance is a non-issue. Honestly, performance issues in your Grails application won't stem from selecting one approach here over the other.
Secondly, the general differences. Using dynamic finders is limited in regards to what types of queries you can perform (odd cases like fetch modes, projections, etc) and this is where criteria based queries shine. Also, named queries (extension of criteria queries) allow you to create reusable queries and chain them.
That's it in a nutshell.