MSSQL pode lidar com muitas linhas muito bem. O tempo de consulta é completamente dependente de muito mais fatores do que apenas uma simples contagem de linhas.
Por exemplo, vai depender de:
- quantas associações essas consultas fazem
- como seus índices estão configurados
- quanta memória RAM está na máquina
- velocidade e número de processadores
- tipo e velocidade do eixo dos discos rígidos
- tamanho da linha/quantidade de dados retornados na consulta
- Velocidade/latência da interface de rede
É muito fácil ter uma tabela pequena (menos de 10.000 linhas) que levaria alguns minutos para executar uma consulta. Por exemplo, usando muitas junções, funções na cláusula where e zero índices em um processador Atom com 512 MB de RAM total.;)
É preciso um pouco mais de trabalho para garantir que todos os seus índices e relacionamentos de chave estrangeira sejam bons, que suas consultas sejam otimizadas para eliminar chamadas de função desnecessárias e retornar apenas os dados que você realmente precisa. Além disso, você precisará de hardware rápido.
Tudo se resume a quanto dinheiro você quer gastar, a qualidade da equipe de desenvolvimento e o tamanho das linhas de dados com as quais você está lidando.
ATUALIZAÇÃO Atualizando devido a alterações na pergunta.
A quantidade de informação aqui ainda não é suficiente para dar uma resposta do mundo real. Você terá apenas que testá-lo e ajustar o design e o hardware do banco de dados conforme necessário.
Por exemplo, eu poderia facilmente ter 1 bilhão de linhas em uma tabela em uma máquina com essas especificações e executar uma consulta "select top(1) id from tableA (nolock)" e obter uma resposta em milissegundos. Da mesma forma, você pode executar uma consulta "select * from tablea" e demorar um pouco porque, embora a consulta seja executada rapidamente, a transferência de todos esses dados pela rede demora um pouco.
O ponto é, você tem que testar. O que significa configurar o servidor, criar algumas de suas tabelas e preenchê-las. Em seguida, você precisa passar pelo ajuste de desempenho para acertar suas consultas e índices. Como parte do ajuste de desempenho, você descobrirá não apenas como as consultas precisam ser reestruturadas, mas também exatamente quais partes da máquina podem precisar ser substituídas (ou seja:disco, mais ram, cpu, etc) com base no bloqueio e tipos de espera.
Eu recomendo que você contrate (ou contrate) um ou dois DBAs para fazer isso para você.