The only thing that will happen differently is if an exception is raised.  For instance, let's say there is a problem in the config_exists? method call.  If it raises an exception in the first example your @config var will be set to {}.  In the second example if the same thing happens your program will crash.
As a side note, there is no need for the return keyword here. In fact the example should read as follows.  This is assuming that I understand the intent.
def config
  @config ||= 
    begin
      if config_exists?    
        some_value
      else
        {}
      end
    rescue
      {}
    end
end
and
def config
  @config ||= method
end
def method
  if config_exists?
    some_value
  else
    {}
  end
end
Both examples are exactly the same, except if an exception is raised @config will still be set to = some_value in the first example.
Also, it should be noted that nothing will happen if @config already has a value.  The ||= operators is the same as:
@config = some_value if @config.nil?
Only set the variable to this value if it is currently nil.
Hope this is helpful and that I am understanding your question correctly.