Prepared statements and terrible performances

There was an application that was changed, so that all queries are performed using prepared statements, rather than regular statements. What happens is that, for every query, the prepared statement is created, used once, dumped.
This is obviously bad for performances, but it is much worse than I could expect.
Please tell me why this query takes 12 seconds on average to execute as prepared statement:

select top 1 * from Object1 where (Column1 = ?) 

You can see the plan here:

The table is about one million rows, a few kbytes every row, has a PK and only 4 indexes, including a non-clustered, non-unique index on Column1

What can I do to improve the performances, without returning to regular statements?