The password value needs to be in a single quotation as well like the username part
SqlConnection sqlConnection = new SqlConnection("Data Source=OWNER;Initial Catalog=train-database;Integrated Security=True;Pooling=False");
SqlDataAdapter sda = new SqlDataAdapter("select c_id From [user] Where E_mail = '"+ f3.E_Mail3.Text +"' and password = '"+f3.Password3.Text+"' ", sqlConnection);
DataTable dt = new DataTable();
sda.Fill(dt);
But this code is vulnerable to SQL injection attack and it is really a bad practice to create SQL queries using string concatenation.
It is highly recommended to use SQL parameters.
The following code is not full working code because I am not near my ide but I am sure you can fix it.
SqlConnection sqlConnection = new SqlConnection("Data Source=OWNER;Initial Catalog=train-database;Integrated Security=True;Pooling=False");
SqlCommand command= new SqlCommand("select c_id from [users] where e_mail =@emailparam and password =@passwordparam",sqlConnection);
command.Parameters.Add(new SqlParameter("emailparam",f3.Email.text));
command.Parameters.Add(new SqlParameter("passwordparam", f3.password.text));
SqlDataAdapter sda = new SqlDataAdapter(command);
DataTable dt = new DataTable(); sda.Fill(dt);
password = "+f3.Password3.Text+"this means you are storing plain text passwords in your database. This is another huge security flaw. You should be salting and hashing your passwords here. Along with the injection problem, this just means that anyone could find out the password for every single user. If this is real data, and you're within the EU, that is something you never want to happen