Muzztein gracias por intentar ayudarme, si, tienes razon estaba mostrando el mismo registro y eso era precisamente lo que no queria.
Mi objetivo es mostrar en horizontal de dos en dos, de esta forma se me muestran en horizontal de dos en dos, cada una es un registro diferente, es decir no me repite los registros, pero no es exactamente lo que yo pretendo, porque no consigo que cada dos registros, el segundo de ellos este dentro de la fila <TD class=segundo, me salen todos dentro de la fila <TD class=primero,
como veras he puesto un contador y
<%if rscatlist.eof and not rscatlist.bof or rscatlist.eof and rscatlist.bof then %>
<%rscatlist.MoveNext%> para intentar que me pase al siguiente registro, pero no lo consigo.

Si no me he explicado bien hazmelo saber.
Gracias de nuevo.
Este es el codigo que estoy usando ahora:
<%
set rscatlist=db.execute("SELECT * FROM PRODUCTOS where caracteristicas=1")
%>
<%
if rscatlist.eof then
response.redirect("error.asp?No se ha encontrado el producto!")
else
rscatlist.movefirst
end if
while not rscatlist.eof
%>
<TABLE class=cuadro cellSpacing=0 cellPadding=0 border=0>
<TBODY>
<TR vAlign=top>
<%
counter="0"
do while not rscatlist.eof
%>
<TD class=primero width="50%">
<H3><%=rscatlist("titulo")%></H3>
</td>
<%
counter=counter+1
%>
<%if rscatlist.eof and not rscatlist.bof or rscatlist.eof and rscatlist.bof then %>
<%rscatlist.MoveNext%>
<TD class=segundo width="50%">
<H3><%=rscatlist("titulo")%></H3>
</TD>
<%else%>
<%end if%>
<%if counter Mod 2=0 Then Response.Write"</tr><TD class=tbldivisor colSpan=2></TD></TR>"
rscatlist.MoveNext
Loop
Wend
%>
</td>
</TR></TBODY></TABLE>