André,
quando se desenvolve uma aplicação em .NET, o framework deverá estar instaldo na máquina onde será executada a aplicação.
Sobre o SQL Server, sim, ele também deverá estar instalado, a não ser que utilize alguma alternativa como o SQL CE, que permite fazer somente a cópia do arquivo de banco de dados, sem instalação, como um MDB do Access.
Ricardo Oneda
