So you're problem is the length of the SELECT-clause in the query? Well I guess you could consider doing:
SELECT *, transform(the_geom, NEW_SRID) as newsrid
which obviously is very short. However this means you're getting the column-value 'the_geom' twice for every row.
Edit: I want to stress though that I'm not saying that I like doing 'SELECT *'. No matter how many columns I select from a table, I always explicitly state the names. So that brings us to another question: 'What is the problem with explicitly naming all the columns?'.
Edit2: Okay so you have 60 columns in the table you're selecting from. I know it's a lot of typing work, but again, what's the problem? It's only a one-time issue. There are probably DB management programs that could even generate the query for you. At least the software we use can.
Using the wild card just isn't good practise, at least not in this situation. It's not easy to maintain, because in your programming environment you can't see a list of columns. You will always have to check that through a DB management program. And I hope you don't access the columns by index? Like:
object columnvalue = row[21];
Because that, in combination with the wild card, will make your program a real hell to maintain. Really, even if it costs you more time to program, in the end, naming the columns in your query will pay off.