Here's a really basic example of how to configure a WCF service in your web/app.config:
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<system.serviceModel>
<services>
<service name="MyServiceTypes.MyService" >
<endpoint address="http://localhost:55555/MyService"
binding="basicHttpBinding"
contract="MyServiceTypes.IMyService" />
</service>
</services>
</system.serviceModel>
</configuration>
On the client side, you want to use the exact same endpoint settings, like this:
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<system.serviceModel>
<client>
<endpoint address="http://localhost:55555/MyService"
binding="basicHttpBinding"
contract="MyServiceTypes.IMyService" />
</client>
</system.serviceModel>
</configuration>
There are a ton of ways to customize the binding, etc. by adding bindingConfiguration sections, and stuff like that. The binding configuration might be where you configure your streaming mode.
It's usually a best practice to put your contract interface; your service and client implementations; and your DataContract types (your data-transfer-objects) in a separate DLL if you can. If you don't have control over the contract (e.g. you are accessing the service on a machine you don't control), an easy way to generate the client side code is to use "Add Service Reference" in Visual Studio, or the svcutil tool. I like svcutil better than Add Service Reference, because it gives you easier control over where the generated code ends up in your project.